当前位置:编程学习 > JS >>

五、js调用webservice接口

以下是jsclient.jsp的源代码:
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
  <head>
  	<script type="text/javascript" 
  			src="<c:url value='/js/jquery-1.5.js'/>"></script>
  </head>
  <body>
    	<label for="name">姓名:</label>
    	<input type="text" id="name" name="name"/>
    	<br/>
    	<a href="#" id="ok">确定</a>
  </body>
  <script type="text/javascript">
  	$(function(){
		$("#ok").click(function(){
			var val = $("#name").val();
			if($.trim(val)==""){
				alert("请输入名称");
				return;
			}
			<!--可以通过拦截器获取请求信息-->
			var str = '<?xml version="1.0" encoding="UTF-8"?>'+
					  '<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'+
					  '<soap:Body><ns2:sayHello xmlns:ns2="http://first.cxf.itcast.com/">'+
					  '<arg0>'+val+'</arg0>'+
					  '</ns2:sayHello></soap:Body></soap:Envelope>';
			$.ajax({
				contentType:'application/xml;charset="UTF-8"',
				dataType:'xml',//发送数据格式
				type:'post',
				url:'http://localhost:9999/cxf2.4_spring_web/ws/helloworld',		//直接发向这个地址
				data:str,
				success:function(data){
					//$(data).find("return").each(function(){
					//	alert($(this).text());
					//});					//使用上面的方法也是可以的
					var ss = $(data).find("return").first().text();
					$("<div>").html(ss)
					    .css("border","1px solid blue")
					    .css({width:'50%'}).
						appendTo($("body"));
					$("#name").val("");
				}
			},"xml");//数据返回格式为xml
		});
  	});
  </script>
</html>

 

补充:Web开发 , 其他 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,