1、傳統(tǒng)方式,判斷瀏覽器進(jìn)行post請(qǐng)求
成都創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、向陽(yáng)網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、成都商城網(wǎng)站開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為向陽(yáng)等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
var?xmlobj;?//定義XMLHttpRequest對(duì)象
function?CreateXMLHttpRequest()
{
if(window.ActiveXObject)
//如果當(dāng)前瀏覽器支持Active?Xobject,則創(chuàng)建ActiveXObject對(duì)象
{
//xmlobj?=?new?ActiveXObject("Microsoft.XMLHTTP");
try?{
xmlobj?=?new?ActiveXObject("Msxml2.XMLHTTP");
}?catch?(e)?{
try?{
xmlobj?=?new?ActiveXObject("Microsoft.XMLHTTP");
}?catch?(E)?{
xmlobj?=?false;
}
}
}
else?if(window.XMLHttpRequest)
//如果當(dāng)前瀏覽器支持XMLHttp?Request,則創(chuàng)建XMLHttpRequest對(duì)象
{
xmlobj?=?new?XMLHttpRequest();
}
}
function?SubmitArticle(act,cityname,antique)?//主程序函數(shù)
{
CreateXMLHttpRequest();?//創(chuàng)建對(duì)象
//var?parm?=?"act=firstweather"?;//構(gòu)造URL參數(shù)
//antique?=?escape(antique);
var?parm?=?"act="?+?act?+?"cityname="?+?cityname?+?"antique="?+?antique;//構(gòu)造URL參數(shù)
//xmlobj.open("POST",?"{dede:global.cfg_templeturl/}/../include/weather.php",?true);?//調(diào)用weather.php
xmlobj.open("POST",?"/weather/include/weather.php",?true);?//調(diào)用weather.php
xmlobj.setRequestHeader("cache-control","no-cache");
xmlobj.setRequestHeader("contentType","text/html;charset=uft-8")?//指定發(fā)送的編碼
xmlobj.setRequestHeader("Content-Type",?"application/x-www-form-urlencoded;");??//設(shè)置請(qǐng)求頭信息
xmlobj.onreadystatechange?=?StatHandler;??//判斷URL調(diào)用的狀態(tài)值并處理
xmlobj.send(parm);?//設(shè)置為發(fā)送給服務(wù)器數(shù)據(jù)
}
2、虛擬表單的形式提交post請(qǐng)求
function?post(URL,?PARAMS)?{
var?temp?=?document.createElement("form");
temp.action?=?URL;
temp.method?=?"post";
temp.style.display?=?"none";
for?(var?x?in?PARAMS)?{
var?opt?=?document.createElement("textarea");
opt.name?=?x;
opt.value?=?PARAMS[x];
//?alert(opt.name)
temp.appendChild(opt);
}
document.body.appendChild(temp);
temp.submit();
return?temp;
}
//調(diào)用示例:
post('請(qǐng)求地址',?{html?:prnhtml,cm1:'sdsddsd',cm2:'haha'});
AJAX
$.ajax({
url:'服務(wù)器端URL',
type:'post',
data:{/*發(fā)送給服務(wù)器的數(shù)據(jù)*/},
success:function(?response?){
//發(fā)送成功,做出相應(yīng)操作
},
error:function(?err?){
//發(fā)送失敗,做出相應(yīng)操作
}
})
javascript中向服務(wù)器發(fā)送http請(qǐng)求借助的是XMLHttpRequest對(duì)象,其他一些庫(kù)如JQuery對(duì)http的請(qǐng)求應(yīng)該是在這個(gè)上面的封裝,創(chuàng)建XMLHTPRequest對(duì)象用下面的語(yǔ)句: function createXMLHttpRequest() { var xmlHttp; if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); if (xmlHttp.overrideMimeType) xmlHttp.overrideMimeType('text/xml'); } else if (window.ActiveXObject) {try {xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {try {xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}}}return xmlHttp;} 發(fā)送get請(qǐng)求,并異步處理 xmlHttp = createXMLHttpRequest(); var url = "getfiledetail.jsp?fileid="+id; xmlHttp.open("GET", url, true);// 異步處理返回 xmlHttp.onreadystatechange = callback; xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;"); xmlHttp.send(); 發(fā)送post請(qǐng)求 var url = "getNginxStatus"; xmlHttp.open("POST", url, true); xmlHttp.onreadystatechange = getStatusBack; xmlHttp.setRequestHeader("Content-Type",
1、創(chuàng)建請(qǐng)求 var xhr = new XMLHttpRequest(); 構(gòu)造函數(shù)實(shí)例化
2、確定發(fā)送方式和地址 xhr.open("get", url, true)
3、發(fā)送請(qǐng)求 xhr.send(null);
4、確定后臺(tái)加載 xhr.onload = function(){}
5、請(qǐng)求返回的數(shù)據(jù) xhr.responseText;