jquery 调用javawebservice

88284453 2013-10-18

最近一段时间下笔了3次,后来都没有进行下去。今天上班来的早了一些,把前一段时间写的js调用webservice的经验与大家分享一下!!!

背景:由于公司最近在搞移动端的功能,需要做报表分析和部分列表展现,需要调用第三方的webservice获取数据,然后通过html5的jquerymobile+jquerychart的技术,都是前端技术所以顾名思义,就需要js实时调用webservice来获取数据,在此,进行研究了一下js实时调用webservice的技术,首先,在网上搜索了很多关于js调用webservice的技术,但是都是js调用.net的webservice,对应.net技术我不是太了解,大家都说.net写的webservice可以直接返回webservice返回的结果,并且可以通过jsonp返回数据也不会有问题,因为我需要调用java的webservice,开始也是用的js调用.net的方式进行调用但是每次调用都会报错。后来在网上搜索了老半天才解决了这个问题,与大家分享。

1.引入jquery.js

2.写一个webservice需要调用的接口xml参数函数,需要给webservice调用服务器进行


jquery 调用javawebservice
 

3.通过jquery被ajax异步调用这个webservice



jquery 调用javawebservice
 
 

4.由于在平板上不存在跨域问题,所以不用考虑跨域,但是在ie浏览器上回存在跨域问题,解决的方法

    解决浏览器跨域问题: 

                         $.support.cors = true;

5.关于返回结果的解析问题

   不管是你在webservice中返回的是什么值,webservice都会以xml的形式返回,所有,我们在返回的结果中要需要做进一步的处理。

因为不同的浏览器解析的结果不同,所有的调的结果页是不尽相同的

 
    //对结果做XML解析。 
    //浏览器判断 (IE和非IE完全不同) 
    if($.browser.msie){
     //$("#result").append(xml.getElementsByTagName("ns1:out")[0].childNodes[0].nodeValue);
     alert('wwwww');
    }
    else{
          alert('wwwww');
         $(xml).find("out").each(function(){ 
         $("#result").append($(this).text());
      
     })      
    }

基本上 如果操作没有失误的话应该是没有问题的。

   

相关推荐

Web全栈笔记 / 0评论 2020-06-15