今天在开发中,遇到了一个问题:
在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)
if (trim(searchkey.value) != "")
}
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');");
欢迎访问:http://www.521189.com (521联合供货网)
QQ:863858965
email:qifl23702570@163.com