我正在向asp网格添加过滤器。我成功地在标题中显示了一个用于过滤的文本框 每当用户按下文本框中的输入键时,我都需要触发服务器代码进行过滤 所以我开始添加像
这样的事件txtFilter.Attributes.Add("onkeyup", keyUpScript);
然后我添加了客户端脚本
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "registerkeyUPScript", registerkeyUPScript, true);
其中
string keyUpScript = "keyUPScript(event);";
string registerkeyUPScript = "function keyUPScript(e){\n"
+ "var unicode=e.keyCode? e.keyCode : e.charCode;\n"
+ "if(unicode == '13')\n"
+"{\n"
+" //PostBack code"
+"}"
+"}";
现在,当用户在文本框中输入字符串并按下回车键时,我怎么能回发。我还需要将过滤后的数据重新绑定回网格
任何帮助将不胜感激。
答案 0 :(得分:1)
您可以尝试使用此行代码将onkeyup
附加到TextBox
,以便仅在按下Enter
时触发回发事件。此外,如果您想为该特定TextBox附加OnTextChanged
事件,您可以执行此操作,并且在页面回发时也会调用该事件。
在Page_Load
事件中使用此功能:
TextBoxID.Attributes.Add("onkeyup", "return (event.keyCode==13);");
这是OnTextChanged
事件,以防您要附加:
protected void T1_TextChanged(object sender, EventArgs e)
{
//your logic goes here
}
希望这有帮助。