我在这里创建了两个表单http://jsfiddle.net/B9r22/8/,当你提交它们时,它们转换为JSON,问题是当你提交第一个表单然后第二个表单时,有两个来自JSON表单的数据,我该如何重置表单或将它们分开?
<form name="first" id="1" action="" method="post">
Which city is in Great Britain?<br/>
London:<input type="radio" name="first" data-questionid="1" value="11"/><br/>
New York:<input type="radio" name="first" data-questionid="1" value="12"/><br/>
<p><input type="submit" /></p>
</form>
<form name="second" id="2" action="" method="post">
Which city is in USA?<br/>
Washington:<input type="radio" name="second" data-questionid="2" value="13"/><br/>
Tokio:<input type="radio" name="second" data-questionid="2" value="14"/>
<p><input type="submit" /></p>
</form>
答案 0 :(得分:0)
您可以使用表单重置,这会将输入设置为默认值,但会忽略某些字段,例如type=hidden
$('#1')[0].reset();
答案 1 :(得分:0)
据我所知,问题在于第6行。您的脚本使用一种无线电收集整个DOM(文档)中所有input
字段的数据。相反,请为选择器提供当前提交表单的上下文,以仅匹配这些特定字段(使用$(this).find
$(this)
引用提交的表单):
将第6行更改为$(this).find('input[type="radio"]:checked').each(function(){
答案 2 :(得分:0)
您需要限制
$( '输入[类型= “无线电”]:检查')
提交表格:
$('form').submit(function() {
var form = $(this);
//....
$('input[type="radio"]:checked', form).each(function(){
//...
答案 3 :(得分:0)
你应该使用$(this)
$(this).find('input[type="radio"]:checked').each(function(){
答案 4 :(得分:0)