欢迎大家关注 “西安e群人”微信公众号,每天会准时为您送上优质的能量养分和行业的资讯信息,为你的事业助力。
本博客唯一全国性的技术交流官方QQ群-- 互联网资源共享群英阁:658233229。 加群的朋友请按照加群提示和群公告活动,欢迎你们的到来,希望认识更多的同行业的朋友。

ajax提交form表单资料详细汇总

一、ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单。通过在后台与服务器进行少量数据交换,ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统普通的网页(不使用ajax)如果需要更新内容,必须重载整个网页页面。

二、通过ajax提交form实现的登录实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<body>
        <h1 align="center">用户登录</h1>
        <div align="center" style="font-size: 20px;">
            <form id="loginForm" name="loginForm" action="${pageContext.request.contextPath}/user/login" method="post">
              <table  align="center">
                      <tr>
                        <td>用户名:</td>
                        <td colspan="2"><input type="text" name="username" id="username" /></td>
                      </tr>
                      <tr>
                        <td>密  码:</td>
                        <td colspan="2"><input type="password" name="password" id="password" /></td>
                      </tr>
                        <td colspan="3" align="center">
                            <input id="login_submit_button" type="button" value="登录"  onclick=<span style="color:#ff00;">"loginSubmit</span>(this.form);" />
                        </td>
                      </tr>
                </table>
            </form>
        </div>
        <div align="center" style="padding:30px;font-size: 15px;">
            <span style="color: red;">注意:</span>
            <span  style="color: blue;">
                只有登录用户才可以上传图片。
            </span>
        </div>
 </body>

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<head>
        <title>用户登录</title>
        <script src="${pageContext.request.contextPath}/js/jquery-1.4.min.js" type="text/javascript"></script>
    </head>
    <script type="text/javascript">
        function loginSubmit(form) {
                $.ajax( {
                    type : "POST",
                    url : "${pageContext.request.contextPath}/user/login",
                    data : $("#loginForm")<span style="color:#ff00;">.serialize</span>(),
                    success : function(msg) {
                        if ((msg == "true")) {
                            alert("登录成功。");
                            window.location.href = "${pageContext.request.contextPath}/add_user";
                        } else {
                            if(msg=="false"){
                                alert("登录失败。");
                            }
                        }
                    }
                });
             
    }
    </script>

  三、部分ajax提交form表单实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
$.ajax({
                cache: true,
                type: "POST",
                url:ajaxCallUrl,
                data:$('#yourformid').serialize(),// 你的formid
                async: false,
                error: function(request) {
                    alert("Connection error");
                },
                success: function(data) {
                    $("#commonLayout_appcreshi").parent().html(data);
                }
            });

  四、ajax提交表单可以分为两种,一种是无返回结果的,就是将表单数据提交给后台,后台处理完就完了;另一种就是有返回结果的,后台执行成功或失败的信息需要返回到前台。


   1,无返回结果的
   最简单的就是$("#formid").submit();直接将form表单提交到后台。


   2,有返回结果的
   这种方式是使用最多的一种,因为程序的执行成功与否都需要给用户提示,程序一般也都是多步完成的,执行完插入操作,需要发起流程,这就需要在界面上判断成功与否。
   ajax本身属于有返回结果的一类,其中的success方法就是处理后台返回结果的。
   ajax提交表单有返回结果的有两种实现方式:


  1)将form表单数据序列化

1
2
3
4
5
6
7
8
9
10
11
12
<span style="font-size:18px;">  $.ajax({
    type: "POST",
    url:your-url,
    data:$('#yourformid').serialize(),
    async: false,
    error: function(request) {
        alert("Connection error");
    },
    success: function(data) {
        //接收后台返回的结果
    }
  });</span>

  这种方式需要注意的是form表单中的项一定要有name属性,后台获取的键值对为key=name值,value=各项值,注意无论是input标签还是span或者是其他标签,一定要有name属性,没有name属性后台是获取不到该项的


   2)通过窗口查找form提交

1
2
3
4
5
6
7
8
<span style="font-size:18px;"// 提交表单
  var obj = document.getElementById("xx_iframe").contentWindow;
  obj.$("#yourform").form("submit",{
    success :function(data){
        //对结果处理
    }
 
  });</span>

  

posted on   云舜言传  阅读(4120)  评论(0编辑  收藏  举报
努力加载评论中...

点击右上角即可分享
微信分享提示