我试图在AJAX完成更新后重新填充div。 这是我尝试使用的AJAX代码。
$(document).on("sf:ajaxfinish", ".searchandfilter", function(){
console.log("ajax complete");
//so load your lightbox or JS scripts here again
$( ".things" ).refresh();
});
我的控制台现在说refresh is not a function
这是正确的。因为我没有写过函数。问题是,我真的不知道如何编写一个函数来刷新div .things
。我希望有人可以帮助我吗?
我试过了:
function refresh {
$('.things').load(document.URL + ' .things');
}
但这给我一个语法错误,我不知道这是否是正确的方法?
这是我的控制台日志。
S&F JS initialised script:125:4
ajax start script:110:5
ajax complete script:118:4
TypeError: $(...).refresh is not a function
提前感谢!
答案 0 :(得分:2)
改变这个:
$( ".things" ).refresh();
仅限于此:
refresh();
刚刚注意到你错过了或者这里有一个错字:
function refresh { // here you don't have () as functions requires these.
refresh();
是一个函数,而不是在选择器上绑定的方法。
根据你的评论你可以在函数的args中传递选择器并使用它:
function refresh($el){
$el.load(document.URL + ' .things');
}
现在你可以这样称呼它:
refresh($('.things'));
答案 1 :(得分:0)
您正在编写干净的代码,但请记住refresh()是用户定义的函数,而不是预定义的函数。
所以你只需使用下面的
SubscriptionRegistry>>handlesAnnouncement:
而不是
refresh();
我在你的代码中注意到了另外一件事。你省略了在下面的代码中添加()
$( ".things" ).refresh();