我有功能:
$(function () {
$('form').on('submit', function (e) {
$.ajax({
type: 'POST',
url: 'conf/send.php',
data: $('form').serialize(),
success: function () {
var form = document.getElementById("Form");
form.submit();
}
});
e.preventDefault();
});
});
在FF,Chrome,Opera,IE上运行良好。在Safari中无法正常工作。 试图补充:
async: false,
$.ajaxSetup({
type: 'POST',
headers: { "cache-control": "no-cache" }
});
$.ajaxPrefilter(function (options, originalOptions, jqXHR) {
options.data = jQuery.param($.extend(originalOptions.data||{}, {
timeStamp: new Date().getTime()
}));
});
这无济于事? 提前谢谢
答案 0 :(得分:1)
我认为你在form.submit()
success()
陷入困境
试试这个
$(function () {
$('form').on('submit', function (e) {
$.ajax({
type: 'POST',
url: 'conf/send.php',
data: $('form').serialize(),
}).done(function(response){
alert(response);
return true;
});
e.preventDefault();
});
});
答案 1 :(得分:1)
您确定此代码:
success: function () {
var form = document.getElementById("Form");
form.submit();
}
实际上你想要的是什么?你告诉JavaScript如果你的表单通过AJAX发送,它应该发送id为#Form
的表单。也许你应该试试这个:
$(function() {
var form = $('form');
form.on('submit', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: 'conf/send.php',
data: form.serialize(),
success: function (response) {
console.log(response);
//var form = document.getElementById("Form");
//form.submit();
}
});
});
});