jQuery Load没有加载jQuery函数

时间:2014-06-17 10:44:46

标签: javascript jquery html ajax jquery-ui

我正在使用 http://jqueryui.com/slider/ 中的 jQuery Slider ,每当您更改滑块时我只是执行该功能而不使用滑块值加载整个页面。例如,我使用滑块控件来过滤内容。我正在使用jQuery load来执行过滤功能,但看起来滑块在加载内容后已消失。

以下是没有ajax的示例代码,我使用ajax一切正常,没有滑块。不知道为什么jquery load没有加载脚本或我错过的东西?

这是我的小提琴http://jsfiddle.net/q5c5T/

这是我的截图,如果我使用jquery.load没有空格这是我得到的错误 enter image description here

HTML

<div class="content">
   This is for testing
    <div class="master">
    </div>
</div>

JS

$( ".master" ).slider({
  value: 60,
  orientation: "horizontal",
  range: "min",
  animate: true,
  change: function(event, ui) {
    //ajax request here
    alert(ui.value);   
    jQuery(".content").load(window.location + " .content");
  }
});
return false;

2 个答案:

答案 0 :(得分:1)

使加载在点之前包含空格的行。这条生产线是否更好?

jQuery(".content").load(window.location + ".content");

答案 1 :(得分:0)

最后我解决了解决方案,但我不确定它是否是一个正确的解决方案。我查看了加载jquery的文档但看起来当你调用load函数时脚本没有被执行是因为所有的html,head,script被剥离而没有被执行

所以我尝试这种方式每当我加载数据时我只是找到内联脚本并附加在同一个元素中。当我尝试这个它正在工作

这是我更新的代码

                              jQuery('.content').load(window.location + ' .content', function(data) {
                                        var scripts = jQuery(data).find('script');
                                        console.log(scripts);
                                        var length = jQuery(data).find('script').length;
                                        for (var i = 0; i < length; i++) {
                                            var scriptincluder = scripts[0];
                                            jQuery('.content').append(scriptincluder);
}
});

这可能会对某人有所帮助:))

谢谢, 维克斯