[英]Ajax sends empty POST-data but ONLY in IE and Firefox
我有一個奇怪的問題(我一直在尋找但沒有成功)。 我正在使用Ajax將表單發布到PHP腳本。 在Chrome,Opera和Safari中運行良好。 但是,在IE和Firefox中,表單都可以正確發送到腳本,但是缺少表單數據。 缺少POST數據時,我已確保腳本返回錯誤。 我試圖搜索這個問題已經好幾個小時了,但是沒有任何運氣。 你是我最后的希望。
這是AJAX代碼(帶有一些Javascript):
<script type="text/javascript">
$(document).ready(function() {
$("#latestNewsForm").on('submit', function(event) {
event.preventDefault();
$.ajax({
url : "http://devserver/site/php/getLatestArticles.php",
type : "POST",
data : new FormData(this),
contentType : false,
cache : false,
processData : false
}).done(function (data) {
$("#formResponse").html(data);
});
});
});
</script>
形式如下:
<form id="latestNewsForm" method="post">
<input type="submit" name="currentPage" id="firstPage" value="1">
</form>
預先感謝!
Ohgodwhy的評論可能是正確的。
將數據放在該ajax調用之外的變量中。 this
可能是與您在不同瀏覽器中期望的有所不同。
嘗試這個:
$("#latestNewsForm").on('submit', function(event) {
event.preventDefault();
var data = new FormData(this);
$.ajax({
url : "http://devserver/site/php/getLatestArticles.php",
type : "POST",
data : data,
contentType : false,
cache : false,
processData : false
}).done(function (data) {
$("#formResponse").html(data);
});
});
另一種可能與您的“提交”按鈕有關:“ 提交翻轉”按鈕在FF和IE中不起作用
嘗試這個:
$.ajax({
type: "POST",
url: "/fetchdata",
data:JSON.stringify(sid),
success: function(result) {
alert('ok');
},
error: function(result) {
alert('error');
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.