如何使用jquery获取html表单的每个客户端控件的名称name和value值?以json格式返回
表单内容如下:由于字数有限,没办法吧html代码贴上去。简单说明下,以上表单存在多种情况:1,客户端控件不在表格中的2,有些客户端控件属于表格td中,可能存在某一个表格中...
表单内容如下:
由于字数有限,没办法吧html代码贴上去。简单说明下,以上表单存在多种情况:
1,客户端控件不在表格中的
2,有些客户端控件属于表格td中,可能存在某一个表格中有多个不一样或者一样的客户端控件
3,客户端控件的类型都需要考虑进去
目的就是:编写js或者jquery代码实在整个表单数据以json的 键值对的格式输出;如:控件的名称name 控件的value值
其中,需要考虑到的特殊情况就是,表格内的单元格中如果存在两个或者两个以上的控件 我们只需要取前面两个。思路就是我们循环每个表格单元格,在里面去找每个存在的控件以及对应的值。意思就是这个位置只需要循环两次就足够了
如果表格外的这些控件,我们直接循环查找form或者div里面的控件属性及值就可以了, 返回同样的数据格式
搜索代码:
$("#htmlConcl tr").each(function (ind) { $(this).find("td").each(function (i) { var ret = {}; // 文本类型 this.find('input[type=text], input[type=password], textarea, select:not([multiple])').each(function () { var name = $(this).prop('name'); ret[name] = $(this).val(); });
this.find('input[type=radio]').each(function () { var name = $(this).prop('name'); if (!ret[name]) { ret[name] = null; } if ($(this).prop('checked')) { ret[name] = $(this).prop('value'); } }); // 数值类型 // 布尔类型 // 数组 ...............................。。。。。。。。。。。。。。
目前只考虑这些类型的控件;
求大神按照这个要求 ,帮我写个完整的表单提交页面,发送至我qq邮箱:754711109@qq.com; 急用!!!谢谢 分只有这么多了 不好意思,技术无价。 展开
由于字数有限,没办法吧html代码贴上去。简单说明下,以上表单存在多种情况:
1,客户端控件不在表格中的
2,有些客户端控件属于表格td中,可能存在某一个表格中有多个不一样或者一样的客户端控件
3,客户端控件的类型都需要考虑进去
目的就是:编写js或者jquery代码实在整个表单数据以json的 键值对的格式输出;如:控件的名称name 控件的value值
其中,需要考虑到的特殊情况就是,表格内的单元格中如果存在两个或者两个以上的控件 我们只需要取前面两个。思路就是我们循环每个表格单元格,在里面去找每个存在的控件以及对应的值。意思就是这个位置只需要循环两次就足够了
如果表格外的这些控件,我们直接循环查找form或者div里面的控件属性及值就可以了, 返回同样的数据格式
搜索代码:
$("#htmlConcl tr").each(function (ind) { $(this).find("td").each(function (i) { var ret = {}; // 文本类型 this.find('input[type=text], input[type=password], textarea, select:not([multiple])').each(function () { var name = $(this).prop('name'); ret[name] = $(this).val(); });
this.find('input[type=radio]').each(function () { var name = $(this).prop('name'); if (!ret[name]) { ret[name] = null; } if ($(this).prop('checked')) { ret[name] = $(this).prop('value'); } }); // 数值类型 // 布尔类型 // 数组 ...............................。。。。。。。。。。。。。。
目前只考虑这些类型的控件;
求大神按照这个要求 ,帮我写个完整的表单提交页面,发送至我qq邮箱:754711109@qq.com; 急用!!!谢谢 分只有这么多了 不好意思,技术无价。 展开
1个回答
展开全部
放到<form></form>里,直接使用 var arr=$("form").serializeArray(); 这样就获取到了name-value的数组
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询