ajax post get方式提交資料詳解

來源:互聯網
上載者:User

ajax有兩種提交資料的方式,分別為get和post。post方法可傳輸大於2K的資料,在Ajax裡的應用不同之處在於:"post方法的請求地址與傳輸的資料是放在兩個對象裡—-請求地址放在open對象裡,傳輸的資料放在send對象裡;並且在傳輸資料之前定義一個傳輸檔案HTTP頭資訊(setRequestHeader)"

用上迴圈就是為了在資料發送前進行合理的處理,解決在指令碼語言對資料進行另外需求處理時出現的逾時現象。處於對ajax認識未深,如有說得不對或不到位的,還請指教。

    ajax中的post方法有三個參數,前兩個 參數是必須的,第三個參數根據需求而定。下圖中畫紅色部分,如果你本身的編碼就是utf8的就可以不用了。因為ajax本身預設的傳送值以及本身都是用utf8編碼,如果你用的是gbk編碼則需要在資料傳送之前進行轉碼。

  

  但是在伺服器處理語言中還需要相應的轉碼配合,如

<SCRIPT LANGUAGE="網頁特效">
function saveUserInfo(){
//擷取接受返回資訊層
var msg = document.getElementById("msg");
var f = document.user_info;
var userName = f.user_name.value;
var userAge = f.user_age.value;
var userSex = f.user_sex.value;
//接收表單的URL地址
var url = "commit.php教程";
//需要POST的值,把每個變數都通過&來聯結
var postStr = "name="+ userName +"&age="+ userAge +"&sex="+ userSex;
//執行個體化Ajax
var ajax = null;
if(window.XMLHttpRequest){
ajax = new XMLHttpRequest();
}
else if(window.ActiveXObject){
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
else{
return;
}
//通過Post方式開啟串連
ajax.open("POST", url, true);
//定義傳輸的檔案HTTP頭資訊
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//發送POST資料
ajax.send(postStr);
//返回資料的處理函數
ajax.onreadystatechange = function(){
if (ajax.readyState == 4 && ajax.status == 200){
msg.innerHTML = ajax.responseText;
}
}
}
</SCRIPT>
<form name="user_info">
姓名:<input type="text" name="user_name" /><br/>
年齡:<input type="text" name="user_age" /><br/>
性別:<input type="text" name="user_sex" /><br/>
<input type="button" value="提交表單" onClick="saveUserInfo()">
</form>
//構建一個接受返回資訊的層:
<div id="msg"></div>
相關文章

聯繫我們

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