主頁 > 知識庫 > 純javascript的ajax實現(xiàn)php異步提交表單的簡單實例

純javascript的ajax實現(xiàn)php異步提交表單的簡單實例

熱門標(biāo)簽:越南河內(nèi)地圖標(biāo)注 個人怎樣在百度地圖標(biāo)注地名 云呼外撥網(wǎng)絡(luò)電話系統(tǒng) 地圖標(biāo)注項目怎么樣 騰訊地圖標(biāo)注位置能用多久 超級大富翁地圖標(biāo)注 ai機器人電銷資源 硅語電話機器人公司 機器人電銷騙局揭秘

很多時候需要異步提交表單,當(dāng)表單太多是時候,一個個getElementById變得很不實際

當(dāng)然,jquery可以實現(xiàn)異步提交表單,jquery.form.js這個庫貌似也挺流行

只是有時候并不想使用額外的庫,所以就琢磨著自己寫,用純js來實現(xiàn)異步提交表單

實現(xiàn)如下(本例用POST方式提交,用php作為服務(wù)器腳本)

HTM L文件:test

html>
head>
  script type="text/javascript" src="name_form.js">/script>
/head>
body>
  form action="process.php" id="ajax_form">
    Username:input type="text" name="username" id="username"/>br>
    input type="button" onclick="submitForm('name_form')" value="Submit">
  /form>
  div id="tip">/div>
/body>
/html>

JS文件:name_form.js

function createXmlHttp() {
  var xmlHttp = null;
   
  try {
    //Firefox, Opera 8.0+, Safari
    xmlHttp = new XMLHttpRequest();
  } catch (e) {
    //IE
    try {
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
   
  return xmlHttp;
}
 
function submitForm(formId) {
  var xmlHttp = createXmlHttp();
  if(!xmlHttp) {
    alert("您的瀏覽器不支持AJAX!");
    return 0;
  }
  
  var url = 'test.php';
  var postData = "";
  postData = "username=" + document.getElementById('username').value;
  postData += "t=" + Math.random();
  
  xmlHttp.open("POST", url, true);
  xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  xmlHttp.onreadystatechange = function() {
    if(xmlHttp.readyState == 4  xmlHttp.status == 200) {
      if(xmlHttp.responseText == '1') {
        alert('post successed');
      }
    }
  }
  xmlHttp.send(postData);
}

PHP文件:test.php

?php
  if(isset($_POST['username']) {
    echo '1';
  }
?>

上面程序的原理是,首先用戶用過在test.html文件中輸入用戶名信息,然后通過name_form.js文件進行ajax實現(xiàn)提交表單,然后在php文件中進行操作,此處只是判斷用戶名是否被設(shè)定,也就是說用戶名是否存在,存在則輸出1;另外,也可以對數(shù)據(jù)庫進行操作(增,改等),然后判斷操作結(jié)果,如果結(jié)果為真則輸出1,在js文件中的xmlHttp.responseText中判斷返回的信息,因為只是輸出1,所以判斷正確,此時彈出提示框,內(nèi)容是'post successed'。這樣就成功實現(xiàn)了用ajax實現(xiàn)php異步提交表單。

注:要保證php文件echo之前沒有任何的輸出,這樣ajax才能準(zhǔn)確地獲取返回的信息。

以上這篇純javascript的ajax實現(xiàn)php異步提交表單的簡單實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • JavaScript實現(xiàn)異步提交表單數(shù)據(jù)
  • jquery.form.js異步提交表單詳解
  • Extjs表單輸入框異步校驗的插件實現(xiàn)方法
  • javascript將異步校驗表單改寫為同步表單
  • Javascript異步表單提交,圖片上傳,兼容異步模擬ajax技術(shù)
  • JavaScript實現(xiàn)異步獲取表單數(shù)據(jù)

標(biāo)簽:林芝 邢臺 舟山 洛陽 鄭州 內(nèi)蒙古 遼源 海南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《純javascript的ajax實現(xiàn)php異步提交表單的簡單實例》,本文關(guān)鍵詞  純,javascript,的,ajax,實現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《純javascript的ajax實現(xiàn)php異步提交表單的簡單實例》相關(guān)的同類信息!
  • 本頁收集關(guān)于純javascript的ajax實現(xiàn)php異步提交表單的簡單實例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章