我有一个表单,该表单通过ajax脚本将表单发布到一些PHP代码中。奇怪的是,所有功能都可以在Safari中正常工作,但是一旦我在Firefox或Chrome中尝试使用它,尽管控制台未显示任何错误,但ajax调用会将所有内容视为错误处理。
$('#newClearance').on("submit", function(e) {
e.preventDefault();
var formData = new FormData(this);
$.ajax({
method: 'POST',
url: 'modules/avas/library/avas_functions.php?action=newClearance',
data: formData,
contentType: false,
cache: false,
processData: false,
success: function (data, status) {
$('#formModal').modal('hide');
$.notify(data, {type: 'success'});
$.get(window.location)
.done(function (r) {
var newDom = $(r);
$('#clearanceList').replaceWith($('#clearanceList', newDom));
});
},
error: function (data,status,error) {
$.notify(error, {type: 'danger'});
}
});
});
如果我将html表单直接发布到PHP脚本,那么一切顺利,PHP脚本返回成功。它适用于所有浏览器。
我真的找不到线索,特别是因为相同的脚本(除了另一种形式)在所有浏览器中都运行良好。有人知道吗?
其他信息 要注意的一件好事是,表单和jquery放在模式中,就像您可能会注意到表单代码一样。
答案 0 :(得分:0)
服务器日志收到请求后会说什么?
答案 1 :(得分:0)
解决方案的一部分似乎是表单的“提交”按钮,PHP脚本要求运行该按钮。我已经在PHP脚本中删除了这种情况,但仍然想知道为什么firefox / chrome无法发布提交按钮,而Safari可以发布。