2013-01-17 42 views
0

我有兩個組單選按鈕的如何觸發事件:後選擇了兩個不同的單選按鈕

<input type="radio" name="amount" value="1"/> 
<input type="radio" name="amount" value="2"/> 

<input type="radio" name="book" value="fiction"/> 
<input type="radio" name="book" value="novel"/> 
function myEvent(){ 
    //do something 
} 

我想觸發一個事件,特別是調用另一個函數當兩個單選按鈕被檢查。我嘗試過使用click()change()函數,但是,在檢查第一個單選按鈕後會調用函數。我只想在兩個單選按鈕被選中後才調用一個函數。我該怎麼做呢?

+0

slap onclick處理所有這些處理程序,然後讓處理程序計算選擇了多少個單選按鈕,並且只有在兩個集合都處於選中狀態時纔會繼續。 –

+0

@MarcB對於輸入應該是'onchange',因此它也可以使用鍵盤。 –

回答

1

像這樣的東西應該工作:

$(':radio').change(function() { 
    if($(':radio:checked').length === 2) { 
     myEvent(); 
    } 
}); 

的關鍵部分是if聲明,將選擇所有checked單選按鈕,然後確保有完全兩個人(使用所產生的jQuery對象的length財產),然後調用該函數。

+0

非常感謝安東尼!它完美的作品。 – user1324418

0
$(':radio').change(function() { 
    if ($("input:radio[name='name']").is(':checked') && $("input:radio[name='book']").is(':checked')) { 
     myEvent(); 
    } 
}