JS直接访问WebService(来自于网络)

直接上代码

var URL = "http://localhost:2242/Test/WS.asmx";                     
          //在这处我们拼接   
         var data;   
         data = '<?xml version="1.0" encoding="utf-8"?>';           
         data = data + '<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">';  
         data = data + '<soap12:Body>';    
         data = data + '<GetUpdateTime xmlns="http://tempuri.org/" />';     
         data = data + '</soap12:Body>';         
         data = data + '</soap12:Envelope>';                  
         //创建异步对象      
         var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");          
       xmlhttp.Open("POST", URL, false);           
       xmlhttp.SetRequestHeader("Content-Type", "application/soap+xml");    
       xmlhttp.Send(data);         
       alert(xmlhttp.responseText);

不过有个问题,返回数据的类型是这样子滴:

<?xml version="1.0" encoding="utf-8" ?>
  <string xmlns="http://tempuri.org/">20111212164723592</string>

想直接调取里面的这个返回串,需要自己想办法了。最笨的方法就是在WEBSERVICE中给返回值前后加一个符号,比如'$'

这样JS端可以通过这两个所在String中的Index截取出来中间这串,真的是个笨方法哦

原文地址:https://www.cnblogs.com/huangxue/p/2284991.html