我想返回一個確認的JSON對象回到我的AJAX函數。由於某些原因,即使帖子成功(200),錯誤回調函數總是被調用。我正在將返回的JSON記錄到一個文件中以進行dubgging,並且它看起來是正確的。我無法弄清楚爲什麼會發生這種情況。有人可以提出建議嗎?jQuery - 爲什麼始終調用Ajax()錯誤回調?
PHP控制器動作(CI):
public function sendMail()
{
$senderName = trim($_POST['senderName']);
$returnEmail = trim($_POST['returnEmail']);
$message = trim($_POST['message']);
if (valid_email($returnEmail))
{
send_email('[email protected]','Website Email From: '.$senderName, $message);
$success = array('success'=>'Mail Sent');
//Debugging to file
$myFile = "testFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = json_encode($success);
fwrite($fh, $stringData);
fclose($fh);
echo json_encode($success);
}
else
{
$errorMessage = array('error'=>'Invalid Email Address');
echo json_encode($errorMessage);
}
}
}
JS:
$.ajax({
type: "POST",
url: "http://domain.com/index.php/mail/sendmail",
data: {senderName: senderName, returnEmail: senderAddr, message: message },
dataType: "JSON",
success: function(msg){
console.log(msg);
},
error: function(data){
alert("Something went wrong"); // possible that JSON wasn't returned
}
});
@Eevee,什麼是蜻蜓,我從來沒有嘗試過。 – kobe 2011-05-29 04:36:57
Opera的調試器:http://www.opera.com/dragonfly/ – Eevee 2011-05-29 04:39:05
我使用螢火蟲..我知道這個帖子正在工作,因爲在這種情況下,電子郵件被髮送。我想看一下XHR對象的提示。謝謝 – Nick 2011-05-29 04:41:13