我試圖發送一個AJAX請求,並想看看我發送了什麼。 但不幸的是我無法做到這一點。 存在一個select選項元素,如果一切正常,我將在稍後填入響應。AJAX請求 - 如何查看請求?
<script type="text/javascript">
$(document).ready(function(){
$('select[name="domains"]').change(function(){
var requestStr = $(this).val();
// send Ajax request
$.ajax({
cache: 'false',
type: 'POST',
data: {select:requestStr},
url: 'myHandler.php',
dataType: 'json',
success: function(data){
var json = JSON.parse(data);
alert(json.response); // Here you get the value
if(data.status == 'success')
alert("Thank you for subscribing!");
else if(data.status == 'error')
alert("Error on query!");
var str = "<option value=''>Please Select</option>";
//$.each(data, function(i, items){
// str += "<option value='"+items.id+"'>"+items.name+"</options";
//});
$('select[name="countries"]').html(str);
},
// When an error occurs, the error function is called.
error:function(x,e){
if(x.status==0){
alert('You are offline!!\n Please Check Your Network.');
}else if(x.status==404){
alert('Requested URL not found.');
}else if(x.status==500){
alert('Internel Server Error.');
}else if(e=='parsererror'){
alert('Error.\nParsing JSON Request failed.');
}else if(e=='timeout'){
alert('Request Time out.');
}else {
alert('Unknow Error.\n'+x.responseText);
}
}
});
});
});
PHP的處理程序是這樣的:
<?php
require_once 'myClass.php';
if (isset($_POST['select']))
{
// log event
$filename = "log.txt";
$fd = fopen($filename, "a");
$str = "[" . date("Y/m/d h:i:s", mktime()) . "] " . $_POST['select'];
fwrite($fd, $str . "\n");
fclose($fd);
$handler = new myClass();
$dataAjax = $handler->getName($_POST['select']);
echo json_encode($dataAjax);
}
<?php
class myClass {
function getName($data)
{
return $data;
}
}
我以爲我可以使用請求參數和返回,但沒有什麼我可以看到。 哦,我使用Internet Explorer,因此我無法使用Firebug。
編輯 我添加了幾行記錄我的請求。 但是日誌文件是空的。
UPDATE 現在有一些進展:
我可以在請求文本 「選擇= QD」 看到這一點。 但是,當我與echo json_encode($dataAjax);
呼應它,我得到一個錯誤窗口Error.Parsing JSON Request failed.
爲什麼「成功」功能將不能工作,我不明白這一點! 響應是json編碼。
哦順便說一句。是否正確,我不能在PHP中使用「返回」來將我的回覆發送回AJAX?
IE瀏覽器的開發者工具 - F12或F10,我相信(應(開發工具) - 從那裏,查看您的網絡選項卡 – tymeJV
Firebug(Firefox)<=我的最愛,開發人員工具(Chrome) – Dexa
即使您使用Internet Explorer多少,它至少可以調試這與螢火蟲o r鉻控制檯足以讓ajax請求工作。 – Rooster