js原生態ajax建立方法介紹(XMLHttpRequest)

來源:互聯網
上載者:User

XMLHttpRequest

 代碼如下 複製代碼

<script type=”text/javascript”>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject(“Microsoft.XMLHTTP”);
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById(“txtHint”).innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open(“GET”,”filefunction.php?dt=attatchment&u=abc.txt”,true);
xmlhttp.send();
}
</script>

下面來看看jquery+ajax/" target="_blank">jquery ajax應用

jQuery Ajax 事件

Ajax請求會產生若干不同的事件,我們可以訂閱這些事件並在其中處理我們的邏輯。在jQuery這裡有兩種Ajax事件:局部事件 和 全域事件。

局部事件就是在每次的Ajax請求時在方法內定義的,例如:

 代碼如下 複製代碼

 $.ajax({
beforeSend: function(){
// Handle the beforeSend event
},
complete: function(){
// Handle the complete event
}
// ...
});

同時我們還可以直接使用如

jQuery.get( url, [data], [callback] ):使用GET方式來進行非同步請求

load( url, [data], [callback] ) :載入遠程 HTML 檔案代碼並插入至 DOM 中

jQuery.post( url, [data], [callback], [type] ) :使用POST方式來進行非同步請求


這些都很不錯,只適合小量input如果有大量的我們必須使用ajax - serialize() 方法方法了,如下

 代碼如下 複製代碼

html

<form  method="post" id="submitform"  name="submitform" ><tr>
      <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td width="6%">手機:</td>
          <td width="21%"><input name="mo" type="text" class="inp" id="mo" size="17" /></td>
          <td width="8%" align="right">郵箱:</td>
          <td width="21%"><input name="email" type="text" class="inp" id="email" size="17" /></td>
          <td width="44%"><span class="gray"></span></td>
        </tr>
      </table></td>
      </tr>
    <tr>
      <td height="90" align="left">
        <textarea name="bak" cols="80" rows="5" class="lab" id="bak1"></textarea></td>
      </tr>
    <tr>
      <td><input name="button" type="button" class="but" id="buttonajax" value="提交留言" />
        <span class="gray">        </span></td>
      </tr>
    
 </form>

$('#buttonajax').click(function(){
 //alert($(this).val());
 //checkem();
 var postData = $('#submitform').serialize();
 //alert(postData);
 $.ajax({
  type: "POST",
  url: "/postajax.php",
  data: postData,
  success: function(msg){
   //alert(msg);
   if(msg==1){
    alert('您的問題已提交成功!');    
   
   }
  }
 });
})

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.