Updatepanel刷新后jQuery无法正常工作

时间:2016-11-03 14:47:24

标签: jquery asp.net updatepanel

任何人都可以澄清我如何在更新面板刷新后调用该函数。我已通过此link阅读了参考资料,但我不知道在call function here地区应该提供什么。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type = "text/javascript">
        var jq5 = $.noConflict(true);
        jq5(document).ready(function () {
            var CheckAll = jq5("#chkAll").click(function () {
                if (this.checked) {
                    jq5('.chk').attr('checked', this.checked);
                }
                else {
                    jq5('.chk').attr('checked', this.checked = false);
                }
            });
            jq5(".chk").click(function () {
                if (jq5(".chk").length == jq5(".chk:checked").length) {
                    jq5("#chkAll").attr("checked", "checked");
                } else {
                    jq5("#chkAll").removeAttr("checked");
                }
            });
        });

    var prm = Sys.WebForms.PageRequestManager.getInstance();
    if (prm != null) {
        prm.add_endRequest(function (sender, e) {
            if (sender._postBackSettings.panelsToUpdate != null) {
                // call function here...
            }
        });
    };
</script>

2 个答案:

答案 0 :(得分:0)

每次更新面板请求后,您可能需要添加事件侦听器。

var jq5 = $.noConflict(true);
jq5(document).ready(function () {
        AddClickEvent();
});

var prm = Sys.WebForms.PageRequestManager.getInstance();
if (prm != null) {
    prm.add_endRequest(function (sender, e) {

        AddClickEvent();

        if (sender._postBackSettings.panelsToUpdate != null) {
            // call function here...
        }
    });
};

function AddClickEvent(){
            var CheckAll = jq5("#chkAll").click(function () {
                if (this.checked) {
                    jq5('.chk').attr('checked', this.checked);
                }
                else {
                    jq5('.chk').attr('checked', this.checked = false);
                }
            });
            jq5(".chk").click(function () {
                if (jq5(".chk").length == jq5(".chk:checked").length) {
                    jq5("#chkAll").attr("checked", "checked");
                } else {
                    jq5("#chkAll").removeAttr("checked");
                }
            });
}

答案 1 :(得分:0)

解决。刚改变了 (document).ready(function ()function pageLoad(sender, args)