在单独的表单上查找每个选中的单选按钮值

时间:2015-12-07 15:49:14

标签: javascript jquery html

现在,我在两个div标签中存储了两个完整的radiobuttons表单。

我需要能够比较左右div标签中的已检查单选按钮。

现在,我有这个代码来查找右侧和左侧div标签中的选中值;它检查左div标签radiobutton值两次。

   $('#btn').click(function() {
        $("#right input[type='radio']:checked").each(function() {
            var idVal = $(this).attr("id");
            var rightcity = ($("label[for='"+idVal+"']").text());
            console.log(rightcity);
            $('#rightcity').text(rightcity);
        });
        $("#left input[type='radio']:checked").each(function() {
            var idVal = $(this).attr("id");
            var leftcity = ($("label[for='"+idVal+"']").text());
            console.log(leftcity);
            $('#leftcity').text(leftcity);
        });

        });

如何专门针对正确的div标签值运行此查询?

1 个答案:

答案 0 :(得分:1)

1st:如果左/右相同组的无线电。无需循环

第二,你可以试试这个

$('#btn').click(function() {
            var rightId = $("#right input[type='radio']:checked").attr("id");
            var leftId = $("#left input[type='radio']:checked").attr("id");
            var rightcity = $("label[for='"+rightId+"']").text();
            var leftcity =  $("label[for='"+leftId+"']").text();

            console.log(rightcity);
            $('#rightcity').text(rightcity);
            console.log(leftcity);
            $('#leftcity').text(leftcity);

});

也许你不需要获取ID ..如果你的HTML

<label></label>
<input type="radio"/>

你可以直接使用.prev()而不是获取ids

var rightcity = $("#right input[type='radio']:checked").prev('label').text();
var leftcity = $("#left input[type='radio']:checked").prev('label').text();

如果是

<input type="radio"/>
<label></label>

使用.next()

 var rightcity = $("#right input[type='radio']:checked").next('label').text();
 var leftcity = $("#left input[type='radio']:checked").next('label').text();

和about (能够比较左右div标签中的已检查的radiobuttons)

var rightValue = $("#right input[type='radio']:checked").val();
var leftValue = $("#left input[type='radio']:checked").val();