我有这个脚本来编辑带有ACF表单的WP帖子。
成功之后,我正在重新加载内容,但是下面这只是交替工作
所以第一次,在提交时,数据保存,然后内容重新加载正常。在第二次数据保存但随后整个页面重新加载,好像它打破了防止默认值。
我知道我需要在每次提交和加载后重置或执行类似的操作,但无法解决这个问题。
由于
(function($) {
//// Get the current page
var pathtopage = window.location.pathname;
//// Save data on submit
acf.do_action('ready', $('body'));
$('form#modalAjaxTrying').on('submit', function(e) {
e.preventDefault();
});
acf.add_action('submit', function($form) {
$.ajax({
url: window.location.href,
method: 'post',
data: $form.serialize(),
success: function(data) {
acf.validation.toggle($form, 'unlock');
//// On Success reload content
$('#content').load(pathtopage + ' #content');
}
});
});
})(jQuery);
答案 0 :(得分:1)
ACF有什么用?为什么不呢
function() {
var pathtopage = window.location.pathname;
$('form#modalAjaxTrying').on('submit', function(e) {
e.preventDefault();
$.ajax({
url: window.location.href,
method: 'post',
data: $form.serialize(),
success: function(data) {
acf.validation.toggle($form, 'unlock');
$('#content').load(pathtopage + ' #content'); // this also boggles the mind
}
});
});
})
但是为什么当你“重新加载”页面时,第一页中的Ajax呢? 此外,如果新内容包含表单,则您将丢失事件处理程序并需要delegate