[转]设置textBox的响应按钮事件的js的两种方法

本文介绍了两种在Web页面上为按键事件绑定处理函数的方法:一种是使整个页面响应按键事件,另一种是针对每个TextBox单独设置响应。这两种方法通过JavaScript实现,允许在按下回车键时触发指定的按钮点击事件。
原文地址:http://www.cnblogs.com/dlwang2002/archive/2006/02/06/326165.html

1:设置整个页面都响应该事件
None.gif        public void SetEnterControl(object ctrl)
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif{
InBlock.gif            System.Web.UI.Control command 
= (System.Web.UI.Control)ctrl;
InBlock.gif            Page mPage 
= command.Page;
InBlock.gif            
string mScript;
InBlock.gif            mScript 
= @"<script language=""javascript""> 
InBlock.gif                            function document.onkeydown() 
InBlock.gif                            { 
InBlock.gif                               var e = event.srcElement; 
InBlock.gif                               var k = event.keyCode; 
InBlock.gif                               if (k == 13 && e.type != ""textarea"") 
InBlock.gif                               { 
InBlock.gif                                  document.getElementById('
" + command.ClientID + @"').click();
InBlock.gif                                  event.cancelBubble = true; 
InBlock.gif                                  event.returnValue = false; 
InBlock.gif                               } 
InBlock.gif                            } 
InBlock.gif                        </script>
";
InBlock.gif            
if (!mPage.IsClientScriptBlockRegistered("SetEnterControl"))
InBlock.gif              mPage.RegisterClientScriptBlock(
"SetEnterControl", mScript);
ExpandedBlockEnd.gif        }

 

2:给每个TextBox都设置一个响应

None.gif        public void SetEnterControl(TextBox source,Button btn)
ExpandedBlockStart.gifContractedBlock.gif        dot.gif{
InBlock.gif            //根据传递的参数来触发命令
InBlock.gif            string script=@"
InBlock.gif              <script  language='javascript'>
InBlock.gif                function SetEnterControl(btnId)
InBlock.gif                {
InBlock.gif                   var e=event.srcElement;
InBlock.gif                   var k = event.keyCode; 
InBlock.gif                   if (k == 13 && e.type != 'textarea') 
InBlock.gif                   {
InBlock.gif                       document.getElementById(btnId).click();
InBlock.gif                       event.cancelBubble = true; 
InBlock.gif                       event.returnValue = false; 
InBlock.gif                   }
InBlock.gif                }
InBlock.gif               </script>
InBlock.gif               ";
InBlock.gif            //注册js
InBlock.gif            if (!this.Page.IsClientScriptBlockRegistered("SetEnterControl"))
InBlock.gif                this.Page.RegisterClientScriptBlock("SetEnterControl", script);
InBlock.gif            //给textbox添加属性,使用js函数
InBlock.gif            source.Attributes["onkeydown"]="SetEnterControl('"+btn.ClientID+"')";
ExpandedBlockEnd.gif        }

转载于:https://www.cnblogs.com/lyzxx/archive/2007/03/28/691746.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值