2014-01-24 104 views
0

我有一個包含大量複選框的表單 - 30+ 它們都被命名爲a_ something。JQuery - 多個選擇器If語句中的類似名稱

如:A_1,A_2,A_3等

我有一個IF語句,基本上是說,如果A_1,A_2或A_3或檢查做BLAH .. 這是工作如下:

if ( $('[name=a_1]').prop('checked') 
     || $('[name=a_2]').prop('checked') 
     || $('[name=a_3]').prop('checked') 
     || $('[name=a_4]').prop('checked') 
     || $('[name=a_5]').prop('checked')) 

但是,由於有30多個可能的複選框,這是越來越多的代碼。如果有辦法做到這一點,並引用任何「a_」複選框。 ?

因此,如果有任何'a_'複選框被選中,請執行BLAH操作。 ?

我雖然這會工作,但它只適用於第一個複選框。

if ($('[name=^a_]').prop('checked')) 

任何想法如何做到這一點?

+0

我想知道你是一個if語句裏面做什麼。我想你可能想在codereview.stackexchange.com上發佈完整的代碼,以便其他人可以看一看並給出有用的建議/示例。 – CRABOLO

+0

IF語句基本上只是警告用戶他們已經選擇了其中一個複選框。如果選擇了任何複選框,則會顯示警報。 這實際上並不需要,只是用戶認爲它會有所幫助。 – JeffVader

回答

2

使用.is():checked selector

if ($('[name^="a_"]').is(':checked')) { 

演示:Fiddle

+0

這似乎不適合我!如果我恢復我的代碼並選擇一個複選框,我會看到一個提示,顯示一個複選框已被選中。當我嘗試過這件事時沒有發生。我的IF語句有效,但看起來有點混亂。 – JeffVader

+0

@JeffVader有一個語法錯誤 –

+0

謝謝,這很好:) – JeffVader