回发后自定义控件生成的jquery无法正常工作

时间:2013-01-28 13:00:35

标签: jquery controls postback generated

我正在创建一个自定义控件来为控件生成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");  

非常感谢您提供的任何帮助!

2 个答案:

答案 0 :(得分:0)

添加以下两个映射解决问题,第一个在初始加载后调用,第二个在每个AJAX调用后调用。

  

(文档)$。就绪(validatefunction);   。Sys.WebForms.PageRequestManager.getInstance()add_endRequest(validateFunction);

答案 1 :(得分:0)

您需要使用<asp:scriptmanager>并以编程方式在每次加载页面时加载脚本文件(将jscript放到文件中)。