Мне нужно выполнить некоторую проверку на стороне сервера, прежде чем администратор сможет отправить форму сообщения:
$('body').on('submit', '#post', function(e) {
if (e.originalEvent === undefined)
{
return true;
}
var thisForm = $(this);
$.ajax('/check.php', $(this).serialize(), function(answer) {
// if answer was ok...
thisForm.submit();
});
return false;
});
на самом деле это работает хорошо, но в случае, когда мое сообщение "черновик", я не могу его поставить«общественность».Ничего не меняется, я думаю, что какой-то другой JavaScript работает в фоновом режиме.
НО, если я делаю синхронную версию:
$('body').on('submit', '#post', function(e) {
var error;
$.ajax({type: 'POST', url: '/action.php', data: $(this).serialize(), async: false, success: function(answer) {
// if answer was ok...
error = true OR false;
});
return !error;
});
все это работает ХОРОШО!Но вы все знаете, никто не делал синхронные вызовы AJAX ...