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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章