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


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

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

    <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>
    

      

    <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表单实例:

    $.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表单数据序列化

    <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提交

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

      

  • 相关阅读:
    Rancher安装
    JDK8日期时间对象
    String经典面试题
    String
    单例模式
    多线程
    接口
    代码块
    内存吞金兽(Elasticsearch)的那些事儿 -- 常见问题痛点及解决方案
    内存吞金兽(Elasticsearch)的那些事儿 -- 写入&检索原理
  • 原文地址:https://www.cnblogs.com/gxbk629/p/4662193.html
Copyright © 2020-2023  润新知