2013-03-08 50 views
1

我使用一个名为dropkick的jQuery插件,使我的选择框看起来更好。不同类型的页面加载与jquery dropkick插件奇怪的问题

在页面加载时,我做了一个ajax请求来从我的数据库中检索数据并使用它填充表单。

一旦我填写了这个表单,我会拨打$.dropkick('reset');来更新dropkick元素来表示表单数据。

这工作正常,如果我用F5做页面刷新,但如果我通过转到网址栏并按Enter进行刷新,所以有效地加载新页面,我得到一个错误,说$ .dropkick不是一个函数。所以就好像dropkick插件在那时尚未加载。

虽然到了ajax请求回来的时候,但事情很奇怪,刷新后它是如何工作的,但不是新的页面加载。

script标签加载插件首先是在DOM Ajax代码的,我使用的Firefox 19.0.1

+0

确实叫AJAX成功funtion – bipen 2013-03-08 13:01:21

+0

里面你踢反弹球的功能是它从我的Ajax请求 – geoffs3310 2013-03-08 13:01:59

回答

1

您可以检查是否踢反弹球是通过使用typeof调用之前定义,如果没有 - 通过$ .getScript收集它这将加载回调中使用,

$(document).ready(function() { 
    if (typeof dropkick == "undefined") { 
     $.getScript("js/dropkick.js", function(){ 
     $.dropkick('reset'); 
     //.. More code 
     }); 
    } 
}); 
+0

@ geoffs3310成功函数中调用这是否解决你的问题还是你需要一种你认为不同的方法? =] – MackieeE 2013-05-22 10:11:59