// ajax 對象 function ajaxObject() { var xmlHttp; try { // Firefox, Opera 8.0+, Safari xmlHttp = new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("您的瀏覽器不支持AJAX!"); return false; } } } return xmlHttp; } // ajax post請求: function ajaxPost ( url , data , fnSucceed , fnFail , fnLoading ) { var ajax = ajaxObject(); ajax.open( "post" , url , true ); ajax.setRequestHeader( "Content-Type" , "application/x-www-form-urlencoded" ); ajax.onreadystatechange = function () { if( ajax.readyState == 4 ) { if( ajax.status == 200 ) { fnSucceed( ajax.responseText ); } else { fnFail( "HTTP請求錯誤!錯誤碼:"+ajax.status ); } } else { fnLoading(); } } ajax.send( data ); }
或者使用jQuery的$.post方法能夠以POST形式向服務器發起AJAX請求。$.post方法是jQuery的實用工具方法。javascript
$.post方法語法html
$.post(url,parameters,callback)java |
|
參數jquery |
|
urlajax |
(字符串)服務器端資源地址。瀏覽器 |
parameter服務器 |
(對象)須要傳遞到服務器端的參數。 參數形式爲「鍵/值」。app |
callback函數 |
(函數)在請求完成時被調用。該函數參數依次爲響應體和狀態。工具 |
返回值 |
XHR實例 |
實例:
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script> <script type="text/javascript"> $().ready(function () { $('#selectNum').change(function () { var idValue = $(this).val(); //採用POST方式調用服務 $.post('Server.aspx', { id: idValue }, function (text, status) { alert(text); }); }) }) </script> </head> <body> <select id="selectNum"> <option value="0">--Select--</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> </body> </html>