• ajax提交表单


    http://blog.csdn.net/lishuangzhe7047/article/details/39939125

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

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

       1,无返回结果的

       最简单的就是$("#formid").submit();直接将form表单提交到后台。

       2,有返回结果的

       这种方式是使用最多的一种,因为程序的执行成功与否都需要给用户提示,程序一般也都是多步完成的,执行完插入操作,需要发起流程,这就需要在界面上判断成功与否。

       ajax本身属于有返回结果的一类,其中的success方法就是处理后台返回结果的。

       ajax提交表单有返回结果的有两种实现方式:

      1)将form表单数据序列化

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

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

       2)通过窗口查找form提交

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

       我使用easyui dialog对话框插入信息时使用过这种提交方式,因为在当前界面上弹出对话框,然后在对话框上的按钮触发对话框中表单提交,对话框又是链接的另外的html页面,如此通过$("#formid")的方式是找不到对话框中的form的,因此这种情况下只能使用这种方式提交表单。

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

       现在遇到的例子也就这些,以后遇到新形式的再补充上来。。

  • 相关阅读:
    Windows系统开机硬盘自检问题解决
    更改软件默认安装路径
    windows添加开机启动项
    xp 如何打开(进行)远程桌面连接
    xp看系统位数
    教你创建一个别人打不开删不掉的文件夹(干坏事爱好者必看)
    无操作一段时间显示器无信号
    长时间用电脑,(给窗口选一个合适的颜色)设置窗口绿色
    Windows右键菜单设置与应用技巧
    Outlook如何定时发邮件
  • 原文地址:https://www.cnblogs.com/zkwarrior/p/4802735.html
Copyright © 2020-2023  润新知