使用MasterPage时,设置默认按钮

来源:互联网 发布:涂涂乐源码 编辑:程序博客网 时间:2024/05/16 01:10

使用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

原创粉丝点击