我在我的home.php
中編寫了下面的代碼。點擊提交按鈕調用login()
函數。需要幫助來捕捉AJAX響應
function login()
{
try{
xmlHttp=new XMLHttpRequest();
}catch(e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e2){
try{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}catch(e3){
alert('Sorry ! AJAX not supported');
}
}
}
xmlHttp.onreadystatechange=function(){
if(xmlHttp.readyState==4&&xmlHttp.status==200){
alert(xmlHttp.responseText);
}
}
xmlHttp.open('POST','ajax_call.php',true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
xmlHttp.send(document.getElementById('username').value,document.getElementById('password').value);
}
</script>
我ajax_call.php腳本是
<?
echo 'hello';
?>
我沒有得到警報Hello
。爲什麼?
[我試圖提醒readyState
和status
xmlHttp.onreadystatechange=function(){
alert(xmlHttp.readyState+" "+xmlHttp.status);
if(xmlHttp.readyState==4&&xmlHttp.status==200){
alert(xmlHttp.responseText);
}
}
和序列得到以下
1 0
2 200
3 200
4 200
hello
1 0
hello
嘗試從xmlHttp.send刪除參數() – bugwheels94
@Ankit:試過,但沒有幫助 –
所以呃... ...難道這不是意味着你的「你好」不顯示?這是應該發生的,每當有更新請求發生變化時,它從1 200(發送,無狀態碼)變爲2 200(接收,狀態正常),最終變爲4 200(請求就緒,狀態正常)之後你會看到你想要的「你好」......對嗎? –