我想从文档就绪开始在.ajaxComplete()
内部执行功能。
$(function() {
$(document).on('click', '.woof_radio_label', function(e) {
if($(this).siblings('.woof_radio_term').is(':checked')) {
$('.page-secondary-content').removeClass('open');
$('.page-primary-content').removeClass('close');
$(this).siblings('.woof_radio_term_reset').click();
refineUrl();
} else {
$('.page-primary-content').addClass('close');
$('.page-secondary-content, .bottom-content').addClass('open');
}
});
});
$(document).ajaxComplete(function() {
function refineUrl() {
console.log('it works');
}
});
系统提示我以下错误:
未捕获的ReferenceError:未定义FineUrl 在HTMLLabelElement。 (scripts-custom.js?ver = 4.9.7:15) 在HTMLDocument.dispatch(jquery.js?ver = 1.12.4:3) 在HTMLDocument.r.handle(jquery.js?ver = 1.12.4:3)
当我单击类 woof_radio_label 时,它将触发ajax事件(产品过滤器),我想在ajaxComplete()上调用函数。
你知道怎么做吗?
答案 0 :(得分:1)
您应该全局声明函数refineUrl()
,然后可以从任何地方调用它。也来自ajaxComplete
和document.ready
。
赞:
$(function () {
$(document).on('click', '.woof_radio_label', function (e) {
if ($(this).siblings('.woof_radio_term').is(':checked')) {
$('.page-secondary-content').removeClass('open');
$('.page-primary-content').removeClass('close');
$(this).siblings('.woof_radio_term_reset').click();
refineUrl();
} else {
$('.page-primary-content').addClass('close');
$('.page-secondary-content, .bottom-content').addClass('open');
}
});
});
$(document).ajaxComplete(function () {
//DO another stuff
});
function refineUrl() {
console.log('it works');
}
答案 1 :(得分:1)
在脚本顶部声明refineUrl()
,以防止发生此类错误,
function refineUrl() {
console.log('it works');
}
$(function(){
.....
});
$(document).ajaxComplete(function() {
refineUrl();
});