Когда мы вешаем аякс обработчик на кнопку submit, может возникнуть проблема из-за которой страница будет перезагружена и в адресную строку передадутся данные по методу GET-запрос, не смотря на то, что в type мы прописали POST.
Решается проблема довольно просто. Достаточно лишь предотвратить отправку формы используя preventDefault().
jQuery(function($) { // оборачиваем скрипт, чтобы в WP-шном jQuery работал $
$("#cfawp_1000").submit(function(e){ //клик по кнопке отправки формы. cfawp_1000 — это ID тега <form>
e.preventDefault(); // предотвращаем отправку формы
var data = $("#cfawp_1000").serializeArray(); // помещаем поля формы в массив json, для передачи в аякс обработчик
jQuery.ajax({ // старт аякс обработки
type: "POST",
url: wlAjax.ajaxurl,
data: data,
success: function(){
alert('Передача успешна!');
}
});
});
});
Особых пояснений, я полагаю, не требуется. Разве что по function(e). Это event, т.е событие. Т.е. первым аргументом в функцию-обработчик события отправляется ссылка на объект события. Или говоря совсем уж простым языком — тут у нас ссылка, переход по которой нам необходимо прервать.