日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

JS調(diào)用web service的通用函數(shù)

 青格兒 2010-04-13

http://www./showtopic-22580.html

調(diào)用:

RequestByPost(method,variable,value,url,_Namespace)

 

method:web service的方法名

variableweb service的方法的變量名數(shù)組

valueweb service的方法的變量的值的數(shù)組

url:請求的地址(asmx文件地址)

_Namespaceweb service的命名空間

 

<script language="javascript" type="text/javascript">

// <!CDATA[

//define

var xmlhttp;

var value=new Array();

var variable=new Array();

//Show Response MSG.

function handleStateChange()

{

    var h=document.getElementById("Label1");

    if(xmlhttp.readyState==4)

    {

        if(xmlhttp.status==200)

        {

            alert(xmlhttp.responseText);

            h.innerHTML=xmlhttp.responseText;

            //h.innerHTML=xmlhttp.responseXML;

        }

        else if(xmlhttp.status==404)

        {

            h.innerHTML="<br>找不到請求的服務(wù)器資源!";

        }

    }

    else if(xmlhttp.readyState==0)

    {

        h.innerHTML="<br>未初始化!";

    }

    else if(xmlhttp.readyState==1)

    {

        h.innerHTML="<br>正在加載……!";

    }

    else if(xmlhttp.readyState==2)

    {

        h.innerHTML="<br>已經(jīng)加載完成!";

    }

    else if(xmlhttp.readyState==3)

    {

        h.innerHTML="<br>正在和服務(wù)器交互";

    }

    else

    {

        h.innerHTML=xmlhttp.responseXML;

}

}

//Get Request Data's length

 

function getlen(str)

{

var bytesCount=0;

for (var i = 0; i < str.length; i++)

{

var c = str.charAt(i);

if (/^[\u0000-\u00ff]$/.test(c))  //匹配雙字節(jié)

      {

bytesCount += 1;

}

else

{

bytesCount += 2;

}

}

return bytesCount;

} 

//Create XMLHttpRequest Object

  function createXMLHttpRequest()

{

    if(window.ActiveXObject)

    {

        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

    }

    else if(window.XMLHttpRequst)

    {

        xmlhttp=new XMLHttpRequest();

    }

} 

//send Request By HTTP POST

function RequestByPost(method,variable,value,url,_Namespace)

{

createXMLHttpRequest();

var data;

data = '<?xml version="1.0" encoding="utf-8"?>';

data = data + '<soap:Envelope xmlns:xsi="http://www./2001/XMLSchema-instance" xmlns:xsd="http://www./2001/XMLSchema" xmlns:soap="'">http://schemas./soap/envelope/">';

data = data + '<soap:Body>';

data = data + '<'+method+' xmlns="'+_Namespace+'">';

for(var i=0;i<variable.length;i++)

{    data = data + '<'+variable[i]+'>'+value[i]+'</'+variable[i]+'>';

}

data = data + '</'+method+'>';

data = data + '</soap:Body>';

data = data + '</soap:Envelope>';

xmlhttp.onreadystatechange=handleStateChange;

xmlhttp.Open("POST",url, true);

xmlhttp.SetRequestHeader ("Content-Type","text/xml; charset=utf-8");

xmlhttp.SetRequestHeader ("Content-Length",getlen(data));

xmlhttp.SetRequestHeader ("SOAPAction",_Namespace+method);

xmlhttp.Send(data);

alert(data);

}

//CallHelloWorld!

function SayHello_onclick() {

//alert(document.getElementById('YourName').value);

  RequestByPost("HelloWorld",new Array("msg"),new Array(document.getElementById('YourName').value),"WebService.asmx","localhost/");

}

//WeatherReport Test:

function Button2_onclick() {

RequestByPost("getWeatherbyCityName",new Array("theCityName"),new Array(document.getElementById('CityName').value),"http://www./WebServices/WeatherWebService.asmx","http://WebXml.com.cn/");

}

// ]]>

</script>

默認(rèn)的命名空間名字應(yīng)該以“/”結(jié)尾

 
另:相關(guān)連接請參考:
在.net中集成Mootools做圖片動態(tài)翻頁
http://kb.cnblogs.com/a/1414420/

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多