jqury中关于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+"
"+dom.value);
                     });

                     var data2=$("#form1").serialize();
                     alert(data2);

   e:作为data参数

 var data2=$("#form1").serialize();
                     $.getJSON("/TestServlet",data2, function (data) {
                            alert(data);
                     });

  

原文地址:https://www.cnblogs.com/zhangyu0217----/p/7196352.html