使用MasterPage时,设置默认按钮

使用MasterPage时,设置默认按钮总是报错,不是IButtonControl类型。参考了网上很多文章,暂时解决了这个问题

在 MasterPage的Form中不要设置defaultbutton,在子页面的Page_Load里添加

string  script  =   " javascript:return WebForm_FireDefaultButton(event, ' "   + Button1.ClientID  +   " ') " ;
this .Page.Form.Attributes[ " onkeypress " =  script;

然后在MasterPage页面上添加javascript

< script type = " text/javascript " >
    
function  WebForm_FireDefaultButton(event, target) {
        
if  (event.keyCode  ==   13   &&   ! (event.srcElement  &&  (event.srcElement.tagName.toLowerCase()  ==   " textarea " ))) {
        
var  defaultButton  =  document.getElementById(target);
            
if  (defaultButton  &&   typeof (defaultButton.click)  !=   " undefined " ) {
                  defaultButton.click();
                  event.cancelBubble 
=   true ;
                  
if  (event.stopPropagation) event.stopPropagation();
                  
return   false ;
             }
        }
         
return   true ;
    }
</ script >

参考文章:http://blog.csdn.net/aws2003/archive/2007/09/21/1794525.aspx

http://www.cnblogs.com/iyond/archive/2007/04/26/728106.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值