2013-02-25 217 views
2

我有一個包含29個單選按鈕對的表單,每個單選按鈕都有一個是/否的選擇。驗證多組單選按鈕

選擇的名稱像這樣爲每組增加:ans1,ans2,ans3 ... ans29。 每個人都有的「是」或「否」

它遵循或多或少這樣的值:

<input type="radio" id="yes1" name="ans1" value="yes"/> 
<input type="radio" id="no1" name="ans1" value="no"/> 

我想寫一個JavaScript函數提交表單時,驗證答案。我正在考慮在循環中使用數組,但不知道如何將選擇放入數組中。

明顯的長方法是重複的if(ans1 = yes) {do something} if(ans2=yes){do something}。 我見過getElementsByName的例子,但不知道如何在一個簡單的循環函數中實現它來測試每一次迭代。

+0

您是否嘗試過使用對象而不是數組? – slamborne 2013-02-25 17:53:32

+0

你想如何確切地驗證?規則是什麼? – 2013-02-25 17:55:05

+0

爲什麼沒有接受的答案? – 2013-04-23 07:50:56

回答

1

使用jQuery(http://jquery.com/)等

for(int i = 1; i < 30; ++i) 
{ 
    if ($('#yes' + i).val() == 'yes'){ do something } 
} 
5

使用jQuery

$("input:radio:checked").each(function (index) { 
    var this$ = $(this); 
    var q = this$.attr('name'); 
    var a = this$.val(); 

    console.log('Question: ' + q + ', answer: ' + a); 
}); 

該片段僅選擇檢查單選按鈕,然後將它們印刷到控制檯。你可以從這裏做任何你想做的事情,q是問題的名稱(例如ans1)和a本身就是答案(即truefalse)。

查看它in action