分开两个html表单

时间:2014-03-05 22:01:52

标签: javascript html json forms

我在这里创建了两个表单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>

5 个答案:

答案 0 :(得分:0)

您可以使用表单重置,这会将输入设置为默认值,但会忽略某些字段,例如type=hidden

$('#1')[0].reset();

答案 1 :(得分:0)

据我所知,问题在于第6行。您的脚本使用一种无​​线电收集整个DOM(文档)中所有input字段的数据。相反,请为选择器提供当前提交表单的上下文,以仅匹配这些特定字段(使用$(this).find $(this)引用提交的表单):

将第6行更改为$(this).find('input[type="radio"]:checked').each(function(){

http://jsfiddle.net/B9r22/12/

答案 2 :(得分:0)

您需要限制

  

$( '输入[类型= “无线电”]:检查')

提交表格:

    $('form').submit(function() {
        var form = $(this);
        //....

        $('input[type="radio"]:checked', form).each(function(){
            //...

http://jsfiddle.net/B9r22/9/

答案 3 :(得分:0)

你应该使用$(this)

$(this).find('input[type="radio"]:checked').each(function(){

http://jsfiddle.net/B9r22/10/

答案 4 :(得分:0)

获取单选按钮时将表单用作范围:

$('input[type="radio"]:checked', this)

演示:http://jsfiddle.net/B9r22/11/