我正在创建一个自定义控件来为控件生成jQuery验证脚本,这些控件的验证规则依赖于配置,因此经常更改。其中一个要求是,由于巨大的回发和潜在的低带宽网络,必须在客户端进行验证。我的自定义控件的输出示例如下所示。我有一个共同的问题,即jquery在回发后停止工作,我尝试使用PageLoad,Sys.Application ....等但它仍然是一个问题。我是jQuery(一般来说是JS)的新手,想知道是否应该生成大量的PageLoad声明应该是一个问题?由于每个控件的动态验证规则,我无法对任何脚本进行硬编码。
output.WriteLine("<script type='text/javascript'>" +
"$(document).ready(" +
"function () {" +
" $('#" + ControlToValidate + "').mouseenter(function () {" +
" $('#validate_msg_" + ControlToValidate + "').text('some error');" +
" });" +
"});" +
"</script>");
output.WriteLine("<div id='validate_msg_" + ControlToValidate + "' style='color:Red'></div");
非常感谢您提供的任何帮助!
答案 0 :(得分:0)
添加以下两个映射解决问题,第一个在初始加载后调用,第二个在每个AJAX调用后调用。
(文档)$。就绪(validatefunction); 。Sys.WebForms.PageRequestManager.getInstance()add_endRequest(validateFunction);
答案 1 :(得分:0)
您需要使用<asp:scriptmanager>
并以编程方式在每次加载页面时加载脚本文件(将jscript放到文件中)。