zoukankan      html  css  js  c++  java
  • ajax提交表单

        ajax提交表单在项目中经常使用,前台不管是简单的html、jsp或者是使用了easyui框架。提交表单都会使用到ajax。extjs框架事实上也是使用了ajax仅仅只是对其进行了封装了。我们使用的时候就更固定了些。

       总的来说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>
       我使用easyui dialog对话框插入信息时使用过这样的提交方式,由于在当前界面上弹出对话框,然后在对话框上的button触发对话框中表单提交,对话框又是链接的另外的html页面。如此通过$("#formid")的方式是找不到对话框中的form的。因此这样的情况下仅仅能使用这样的方式提交表单。

       另外ajax中封装的get,post请求也都属于有返回结果的一类。

       如今遇到的样例也就这些,以后遇到新形式的再补充上来。

  • 相关阅读:
    实现主从关系Form中汇总行金额/数量
    Custom.pll : 客制化菜单
    XML publisher 填充空白行数
    PLSQL提交带有模板的报表的方法
    使用Form个性化修改标准Form的LOV2
    在开发Form表单中的三种查询方法
    S3C2440 I2C实现
    NBOOT 基于VS2005的编程与编译(一)
    WINCE 6.0 调大image config.bib
    少用的defined,注意不是define
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/6861260.html
Copyright © 2011-2022 走看看