2014-02-14 80 views
0

我在表單域中有幾個問題。答案是單選按鈕,每個都有獨特的價值。我將這些值加起來並將它們傳遞給隱藏字段。jquery - 檢查所選單選按鈕的值是否大於4

$("#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。

回答

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); 
    } 
}); 
+0

謝謝!我只想在提交表單時設置隱藏字段的值。我不知道在哪裏添加腳本來做到這一點。 – Mikereee

+0

剛剛添加了提交功能,請參閱編輯 –

+0

一旦我將該功能添加到提交,表單將不會提交。我在這裏有一個開發服務器:http://fdn.thelabelcreative.com/survey – Mikereee

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

這是什麼youre尋找什麼?

你是否想單選按鈕並添加某種結果?如果多數民衆贊成的情況下,你可以使用「每個」在上面的例子

+0

關閉。我想測試是否有任何問題的答案值大於3.不只是當前的答案。 'fieldset:visible'是爲了確保填寫所有答案。我也不想在提交表單之前設置隱藏字段。 – Mikereee

相關問題