AJAX调用后,JQuery插件无法正常工作

时间:2014-10-05 17:52:58

标签: jquery ajax jquery-plugins

AJAX调用似乎禁用了我的jQuery插件。我已经尝试过三个插件,所以假设我的代码出错,而不是插件。

为了简化,我有:

<div id="Static">Not affected by AJAX</div>
<div id="Dynamic">Hello</div>
<button id="change">Change</button>
<button id="print">Print</button>

在按下打印时,我使用printArea插件:

<script src="../jquery.PrintArea.js"></script>
<script>
$(document).on("click", "#print", function(e) {
e.preventDefault;
$('#Static').printArea();
})

我打印静态内容,以排除插件无法处理更改内容的问题。当我按&#34;更改&#34;时,动态内容会更改:

<script  type="text/javascript">
$(document).on("click", "#change", function(){
    var data = "1";
$.ajax({url:"X.php", type:"POST", data:{'mydata': data}, success:function(result){
$("#Dynamic").html(result);
}});
})

</script>

我没有复制X.php代码,因为它工作正常,我不认为这是问题所在。假设它发生变化&#34;你好&#34;到了#34;再见&#34;。

基本上,如果我按&#34;打印&#34;首先,它将打印出来#34;不受AJAX和#34;的影响。如果我按&#34;更改&#34;,Hello将被Goodbye取代。如果我按&#34;打印&#34;在&#34;改变&#34;之后,没有任何事情发生。

如何在AJAX调用后确保我的jQuery插件正常工作?

谢谢!

1 个答案:

答案 0 :(得分:0)

添加

$.getScript("jquery.PrintArea.js")

进入成功函数...有错误,但我认为这是由于我的代码中更复杂的部分,我在这里省略了。