У мене є форма, яка буде виконувати деякі перевірки, перш ніж надсилати дані, тому я зв'яжу це підтвердження в події кліків кнопки відправлення.
$("#myButton").click(function(e){
e.preventDefault();
e.returnValue = false;
//perform validations...
if(valid) {
$("#theForm").submit();
}
});
Нічого не магія поки що. Якщо на сервері все в порядку, сторінка поверне 302 код статусу http.
У Firefox та Chrome URL-адресу успішно перенаправлено, але в Internet Explorer 8 (не тестовано в іншій версії) це призводить до браузера переадресація на ту саму URL-адресу.
Якщо я видалив код JavaScript, IE переспрямовувати "правильно.
Отже, моє питання полягає в тому, що таке submit()
з JQuery відрізняються від звичайного html submit?
Відповіді:
1 для відповіді № 1Я не знаю, яка різниця, але ви повинні мати можливість викликати подію форми безпосередньо з цим, ефективно обійшовши обробку подій в JQuery:
$("#theform")[0].submit();
Якщо відбувається те ж саме, то проблема полягає не в jQuery, а, скоріше за все, через проблему з різними браузерами.