jQuery中关于Ajax的几个常用的函数详解

如题所述

第1个回答  2023-07-27

AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。下面通过本文给大家分享jQuery中关于Ajax的几个常用的函数,需要的的朋友参考下,希望能帮助到大家。
一:
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
什么是 AJAX ?
AJAX = 异步 JavaScript 和 XML。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。
有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。
二:传统的Ajax过于繁琐,jquer封装了一些ajax常用的简单函数。
a: $.ajax()方法:
jsp页面代码 :
<head>
<title>Ajax验证</title>
<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
$(function () {
$("[name='userName']").blur(function () {
$.ajax({
type: "post",
url: "/TestServlet",
data:{action:"login"}, //data 传递的参数一般都是key:“ value” 类型的 value一定要加引号 我亲身体验 那种找不到错的感觉
// dataType:'Text', //servers 返回的格式 也可以是gjon
success: function (data) {
if (data == "success") {
alert(data);
$("#myspan").html(data);
}
},
error: function () { //这个用的比较少
}
})
})
})
</script>
</head>
<body>
姓名: <input name="userName" type="text"><span id="myspan"></span>
密码: <input name="password" type="text">
</body> servlet后台代码:
public class TestServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("action");
System.out.println(name);
if(name.equals("login")){
response.getWriter().write("success"); //返回回掉函数的参数
}else{
response.getWriter().write("file");
}
} b:$.get() , $.post()和 $.getJson方法都是$.ajax()方法的精简版,用法大致一致,少了一个type
$.post("/TestServlet",
{"uname":$('[name=uname]').val()},
function (data) {
alert(data);
}); c: $.load()

$("#msg").load( //可以直接拿到文本框 的值
"/TestServlet","action="+$('[name="userName"]').val()
);
//后台可以直接 根据request.getParameter()拿到参数的值 d:$(selector).serializeArray() 和$(selector).serialize()
//这种方法 可以直接 获得form表单的name属性值,作为data的传参
var data1 = $("#form1").serializeArray(); //自动将form表单封装成json
$.each(data1,function (i,dom) {
alert(dom.name+"\r\n"+dom.value);
});
var data2=$("#form1").serialize();
alert(data2); e:作为data参数
var data2=$("#form1").serialize();
$.getJSON("/TestServlet",data2, function (data) {
alert(data);
});
相似回答