使用onsubmit事件觸發ajax時傳回值如何返回

來源:互聯網
上載者:User
使用onsubmit事件觸發ajax時傳回值怎麼返回
這個是表單





無標題文檔














這個是xmlhttprequest.js頁面

var xmlhttp = false;
if (window.XMLHttpRequest) { //Mozilla、Safari等瀏覽器
xmlhttp=new XMLHttpRequest();
}
else if (window.ActiveXObject) { //IE瀏覽器
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}


這個是js2.js頁面裡面有我標記的路線可以看到整個執行的過程。

var flag;
function check_form(){

var username=document.getElementById('username').value;
var identifying_code=document.getElementById('identifying_code').value;
url='login_chk.php?username='+username+'&identifying_code='+identifying_code;
alert('這裡第1步');
xmlhttp.open('get',url,true);
alert('這裡第2步');
xmlhttp.onreadystatechange = function(){
alert('這裡第5步');
if(xmlhttp.readyState == 4){
alert('這裡第6步');
if(xmlhttp.status == 200){
alert('這裡第7步');
msg = xmlhttp.responseText;
alert('這裡第8步');

if(msg==1){
document.getElementById("tishi").innerHTML="輸入正確正在跳轉";
flag=true;

}
else{
document.getElementById("tishi").innerHTML="使用者名稱或者密碼錯誤";
flag=false;
}
alert('這裡第9步');

}
}

//alert(flag);
}
xmlhttp.send(null);
alert('這裡第3步');


if(flag==true){
alert('這裡是true');
alert(flag);
return true;
}
else {
alert('這裡第4步');
alert(flag);
return false;
}

}

這個是login_chk.php頁面

if(strcmp($_GET['username'],'abcd')==0&&strcmp($_GET['identifying_code'],'abcd')==0){
$msg=1;

}
else{
$msg=0;
}

echo $msg;

?>




最重要的是要取得check_form的傳回值,才能決定表單是否能提交。求高手更改代碼取到check_form的傳回值
------解決方案--------------------
xmlhttp.open('get',url,true);
這是非同步通訊,所以你要定義接受返回資料的回呼函數
xmlhttp.onreadystatechange = function(){
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.