0

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();
}
4

1 に答える 1

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);  
于 2013-07-29T20:53:50.263 に答える