Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
页面重新加载时未执行Javascript_Javascript_Jquery_Html_Css_Ajax - Fatal编程技术网

页面重新加载时未执行Javascript

页面重新加载时未执行Javascript,javascript,jquery,html,css,ajax,Javascript,Jquery,Html,Css,Ajax,当我的页面通过用户点击我的复选框重新加载时,我的JS不会执行 发生的情况是,URL变量被附加到URL中(大小、颜色、价格等,取决于用户单击的内容),当这种情况发生时,JS不知何故没有执行 JS所做的是为我的UL创建一个名为SizeChicklets的类。此外,由于SaaS平台的限制,我只能使用jQuery1.3.2 以下是在单击任何框之前,成功加载页面时我的框的外观: 下面是在页面加载失败时,当我单击任何框时,我的框的外观: 这是因为我附加到UL的类是通过Javascript完成的。然后,该

当我的页面通过用户点击我的复选框重新加载时,我的JS不会执行

发生的情况是,URL变量被附加到URL中(大小、颜色、价格等,取决于用户单击的内容),当这种情况发生时,JS不知何故没有执行

JS所做的是为我的UL创建一个名为SizeChicklets的类。此外,由于SaaS平台的限制,我只能使用jQuery1.3.2

以下是在单击任何框之前,成功加载页面时我的框的外观:

下面是在页面加载失败时,当我单击任何框时,我的框的外观:

这是因为我附加到UL的类是通过Javascript完成的。然后,该类将被样式化。但是,我希望在页面重新加载时执行JS,所以我没有这个问题

当我第一次到达产品优化页面时,我的URL如下所示:

.com/s?defaultSearchTextValue=Search&searchKeywords=*&Action=submit
.com/s?defaultSearchTextValue=Search&searchKeywords=*&Action=submit&field_subjectbin=&field_brandtextbin=&field_price=&field_generic_text_2-bin=&field_generic_text_1-bin=&field_size_name=9M&searchRank=generic-one-desc-rank&searchSize=12&searchPage=1&searchBinNameList=subjectbin%2Cbrandtextbin%2Cprice%2Cgeneric_text_2-bin%2Cgeneric_text_1-bin%2Csize_name
然后,单击其中一个框(值:9M),URL将更改为如下所示:

.com/s?defaultSearchTextValue=Search&searchKeywords=*&Action=submit
.com/s?defaultSearchTextValue=Search&searchKeywords=*&Action=submit&field_subjectbin=&field_brandtextbin=&field_price=&field_generic_text_2-bin=&field_generic_text_1-bin=&field_size_name=9M&searchRank=generic-one-desc-rank&searchSize=12&searchPage=1&searchBinNameList=subjectbin%2Cbrandtextbin%2Cprice%2Cgeneric_text_2-bin%2Cgeneric_text_1-bin%2Csize_name
以下是我的Javascript:

jQuery( document ).ready(function() {
    var sizeUL = jQuery('.binName').filter(function(){
        return this.innerHTML.trim() == 'Size';
    }).next("ul")
    sizeUL.addClass('SizeChicklets');
    /*Prepend and Append clear div*/
    jQuery('.binName').filter(function(){
        return this.innerHTML.trim() == 'Size';
    }).prepend('<div style="clear: both;">').append('</div>');
    /* AJAX SIZE SELECTOR */
    jQuery("li a", sizeUL).click(function() {
        if(jQuery(this).hasClass('SizeChickletSelected')) {
            jQuery(this).removeClass('SizeChickletSelected');
        } else {
            jQuery(this).addClass('SizeChickletSelected');
        }
    });
});

谢谢。

您可以尝试将document.ready更改为:Sys.Application.add\u load(函数(){它需要scriptmanager才能工作。也许这有帮助:@pc shooter是的,这些都没有帮助。drzounds我不知道那是什么。听到这个我很高兴。我会考虑由tommorow左右赏金。顺便说一句,我不认为CSS是问题的一部分。你应该删除那部分。同时删除“CSS”标记。你确定有完整的页面重新加载吗当url更改时?我认为SaaS平台正在使用Ajax处理点击,之后它会重建复选框列表,并使用历史API更改url。您必须找到一种方法,在Ajax请求后如何执行JavaScript代码,但选项取决于具体实现方式。如果确实重新加载一个页面,然后验证第二个页面的代码中是否存在JavaScript代码,以及UL选择器是否与HTML代码匹配。