jquery - 检查所选的任何单选按钮是否具有大于4的值

时间:2014-02-14 23:10:06

标签: javascript jquery

我在表单字段中有几个问题。答案是单选按钮,每个按钮都有一个唯一的值。我将这些值相加并将它们传递给隐藏字段。

$("#submit_button").click(function(){
    if($( "fieldset:visible input:radio").hasClass( "selected" )){

        $( ".selected").each(function(){
            points = points+parseFloat($(this).attr("answer"));
        });

        $("#total_points").val(points);

        $( "#quiz_form" ).submit();

    }
});

但是我想检查是否有任何超过3的值,我不知道如何测试它。我尝试添加

$( ".selected").each.attr("answer") >= 3)

但是无法正常工作。

如果值超过3,我想在提交时将隐藏字段设置为1.

2 个答案:

答案 0 :(得分:0)

您可以根据属性answer的值过滤项目,如果这是您保留的位置,那么请确保至少有一个结果:

var hasOverThree =$(".selected").filter(function(){ 
    return +$(this).attr('answer') >=3;
}).length > 0;

然后设置隐藏字段的值,如果这是真的(假设该字段的id是hiddenField):

if(hasOverThree)}{
   $('#hiddenField').val(1);
}

已编辑:OP希望在提交时设置隐藏字段,因此您只需在提交内创建变量hasOverThree

$( "#quiz_form" ).submit(function(){
    if(hasOverThree)}{
       $('#hiddenField').val(1);
    }
});

答案 1 :(得分:0)

if($( 'fieldset:visible input[type="radio"]:selected').val() >= 3){
    $('#hiddenField').val(1);
}

这就是你要找的东西吗?

你试图计算单选按钮并添加某种结果吗?如果是这种情况,你可以在上面的例子中使用“each”