将JavaScript加载到部分回发

时间:2013-07-29 20:47:26

标签: jquery asp.net updatepanel

加载JavaScript时我遇到了问题。当第一页加载它将工作正常,但当用户单击下一页时,它将无法正常工作只是问他们是否在用户单击下一个或上一个时加载此功能?注意:我尝试使用pageLoad但没有用?

$.each($(".resource-download"), function () {
    var fileExtension = getFileExtension(this.href);
    if (fileExtension == "" || fileExtension != "pdf") {
        $(this).addClass("hideLinke");
    }
});



function getFileExtension(fileURL) {
    if (fileURL.indexOf('.') === -1) { return ""; } //check for no extension
    return fileURL.split('.').pop();
}

1 个答案:

答案 0 :(得分:0)

由于这是一个更新面板,因此您需要使用ScriptManager在回发后再次调用脚本。

这样做:

<script>
    function init(){
         $.each($(".resource-download"), function () {
                var fileExtension = getFileExtension(this.href);
                if (fileExtension == "" || fileExtension != "pdf") {
                    $(this).addClass("hideLinke");
                }
            });

    }
    function getFileExtension(fileURL) {
         if (fileURL.indexOf('.') === -1) { return ""; } //check for no extension
            return fileURL.split('.').pop();
    }
</script>

在回发后,再次调用它:

ScriptManager.RegisterStartupScript(this,this.GetType(), someScript, @"init();", false);