171202之ajax提交整个form表单(一)

本文介绍了Ajax提交Form表单的两种主要方式:无返回结果的提交和有返回结果的提交。重点讲解了如何通过序列化Form表单数据或通过窗口查找Form提交来实现有返回结果的提交,并强调了Form表单元素需要具备name属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介:
ajax提交form表单在项目中经常用到,前台无论是简单的html、jsp或者使用了easyui框架,提交表单都会使用到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>

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

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

总结:无返回结果的和有返回结果的(将form表单数据序列化+通过窗口实现form提交),form表单必须要有name属性

转自:http://blog.youkuaiyun.com/lishuangzhe7047/article/details/39939125

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值