1
У меня есть форма с кнопкой отправки. И я положил onclick = "foo (event, this);" в кнопке отправки для представления.Как отправить форму после успеха ajax в Safari
Я хочу отправить форму после успеха ajax.
Вот мой код:
<form id="form_a" action="destination.html">
<input type="submit" id="submit_button_1" value="Submit button 1" onclick="foo(event, this);">
</form>
<script type="text/javascript">
function foo(event, this_element)
{
event = event || window.event;
event_target = event.target || event.srcElement;
//Prevent the immediate submission because I want submit after ajax success :
event.preventDefault();
//Retrieve the submit button clicked :
if(this_element.id == "submit_button_1")
{
//Submit the form afer ajax success :
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function()
{
if(xhr.readyState == 4 && xhr.status == 200)
{
//Retrieve the form object to submit :
form_a = document.getElementById("form_a");
//Submit the form 3000 ms later :
setTimeout('form_a.submit();', 3000);
}
}
//Send ajax request on server :
xhr.open("POST", "server.php", false);
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xhr.send("");
}
}
</script>
Этот код не работает в сафари. Итак, как подать форму после успеха ajax в сафари?
Спасибо, но это не работает на сафари. – totoaussi
Я использую сафари 9.0.3, и он отлично работает. Возможно, проблема с версией ур. Поместите отладчик в 'form_a = document.getElementById (" form_a ");' и посмотрите, выполняется ли он когда-либо. – Panther
Да Я использую сафари 5.1.7. Можете ли вы попробовать его на сафари 5 и подтвердить меня? – totoaussi