在Header中有一個搜索輸入框,搜索按鈕是Button控件,在“資訊文章搜索”用戶自定義控件中也用到了Button控件。
將焦點停在“資訊標題或內容”輸入框中,回車,但是相應的是Header中輸入框內容。
原因:回車執行的就是你頁面上的第一個submit button。解決方法:(以下以資訊搜索輸入框為例)
1、js:
----------------------------------------------------------------------------
/* 回車後執行按鈕 */
function SubmitKeyClick(button){
if (event.keyCode == 13){
event.keyCode = 9;
event.returnValue = false;
document.all[button].click();
}
}
function checkinputbox(){
var charBag = "[^`~@#$%^&/’|*]";
var searchkey = document.getElementById("ArticleSearch1_txtSearchKey");
if (trim(searchkey.value).length == 0 || trim(searchkey.value).length > 30){
alert("資訊文章關鍵字不能都為空或長度不能超過個字符!");
searchkey.focus();
return false;
}
if (trim(searchkey.value) != ""){
for (var i = 0; i < searchkey.value.length; i++) {
var c = searchkey.value.charAt(i);
if (charBag.indexOf(c) > -1) {
alert("搜索資訊文章關鍵字字符串中含有非法字符(" + c +")!");
searchkey.focus();
return false;
}
}
}
}
2、aspx頁面控件:
---------------------------------------------------
<input id="txtSearchKey" name="txtSearchKey" type="text" runat="server" maxlength="30" onfocus="this.select();" />
3、cs中:
---------------------------------------------------
this.txtSearchKey.Attributes.Add("onkeyPRess", "SubmitKeyClick(’ArticleSearch1_btnSearch’);");
this.btnSearch.Attributes.Add("onclick", "return checkinputbox();");
在Header的cs中,同時將輸入框的Attributes屬性添加上即可。
this.txtKey.Attributes.Add("onkeypress", "SubmitKeyClick(’Header1_btnSearchkey’);");