jquery中load()方法通常从web服务器获取静态文件,如果需要传递一些参数给服务器中的页面,那么可以使用$.get()或者$.post()或者底层的$.ajax()方法。

    $.get(url, data, callback, type)参数介绍如下:

    1.url:请求的URL.

    2.data:发送至服务器的key/value数据附加到URL中。

    3.callback:载入成功时的回调函数(response返回状态为成功时调用该函数)自动将请求结果和状态传递给该方法。

    4.服务器返回内容的格式。

    举例:点击一个按钮将一个字符串从客户端传到服务器,经服务器处理后返回新的字符串。

    jsp代码:

<body>
<input type="button" id="send" value="AJAX获取"/>
<div id="resText"></div>
</body>

    javascript代码:

<script type="text/javascript">
$(function(){
	$("#send").click(function(){
		var str = "test";
		$.get("AjaxServlet", {name : str},  function(responseText, textStatus){
			if(textStatus == "success")
			    $("#resText").text(responseText);
			if(textStatus == "error")
			    alert("Error");

		});
	});
});
</script>

    创建servlet类AjaxServlet,doget()函数代码如下:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String name = request.getParameter("name");
		response.setContentType("text/html");
		PrintWriter writer = response.getWriter();
		writer.println("helloworld" + name);
	}

    servlet配置:

<servlet>
      <servlet-name>AjaxServlet</servlet-name>
      <servlet-class>org.AjaxServlet</servlet-class>
  </servlet>
  <servlet-mapping>
      <servlet-name>AjaxServlet</servlet-name>
      <url-pattern>/AjaxServlet</url-pattern>
  </servlet-mapping>


启动程序后点击按钮就返回了新的字符串


    $.ajax()方法是jQuery最底层的Ajax实现,因此可以用它代替$.get()方法。

    上例中js代码变为:

$(function(){
	$("#send").click(function(){
		var ajaxdata = {
				name : "xiaoli",
				psd : "123"
			};
		$.ajax({
			url : "AjaxServlet",
			type : "GET",
			data : ajaxdata,
			success : function(responseText, textStatus){
				$("#resText").text(responseText);
			},
			error : function(){
				alert("error");
			}
		});
	});
});