2012-08-10 68 views
0

點擊我有以下HTML:選擇所有複選框在使用jQuery

<label><input type="checkbox" value="12" name="Cevent[]" /> Yoga</label> 
<label><input type="checkbox" value="12" name="Cevent[]" /> Yoga 1</label> 
<label><input type="checkbox" value="12" name="Cevent[]" /> Yoga 2</label> 
<label><input type="checkbox" value="12" name="Cevent[]" /> Yoga 3</label> 
<label><input type="checkbox" id="selectAllEventList" name="selectAllE"> Select All</label> 

及以下的Jquery:

$(document).ready(function(){ 

    $('#selectAllEventList').click (function() { 
      $('input[name=Cevent[]]').each(function(){ 
      $(this).prop('checked', status); 
      }); 

    }); 
}); 

但我正在逐漸語法錯誤:

Error: Syntax error, unrecognized expression: [name=Cevent[]] 

我想我我寫錯了選擇器在input[name=Cevent[]]什麼問題我如何正確寫入它,因爲我必須發送它作爲一個數組,所以我必須把它寫成Cevent []。

回答

0

您可以使用\escape[

Live Demo

$(document).ready(function(){ 

    $('#selectAllEventList').click (function() { 
      $('input[name*=Cevent\\[]').each(function(){ 
       if($('#selectAllEventList').is(':checked')) 
        $(this).prop('checked',true); 
       else 
        $(this).prop('checked',false); 
      }); 

    }); 
});​ 
+0

無法正常工作:-(請問您可以提供jsfiddle上的工作示例嗎? – Seeker 2012-08-10 09:59:41

+1

這是在jsfiddle現在,請看看 – Adil 2012-08-10 10:00:15

+0

感謝現在合作的工作非常感謝 – Seeker 2012-08-10 10:28:11

2

引用屬性值:

$('input[name="Cevent[]"]') 

更新

我假設您的代碼是用來在selectAllE複選框更改時檢查/取消選中所有Cevent[]複選框。如果是這樣的話,你可以顯著縮短你的代碼,因爲大多數jQuery方法適用於匹配的集合中的每個元素(有沒有必要使用.each()):

$(document).ready(function() { 
    $('#selectAllEventList').click(function() { 
     $('input[name="Cevent[]"]').prop('checked', this.checked); 
    }); 
});​ 
+0

不工作:-(你能提供jsfiddle上的工作示例嗎? – Seeker 2012-08-10 10:00:03

+1

@PhpSeeker - http://jsfiddle.net/fA3W2/1/- 我添加了「狀態」聲明,你沒有在你的問題中顯示......這可能是問題所在? – 2012-08-10 10:04:27

+1

@PhpSeeker - 而且,假設我以前的小提琴演示了正確的行爲,這裏有一個很多較短版本的代碼:http://jsfiddle.net/fA3W2/2/ – 2012-08-10 10:06:02

0

請試試這個

see Demo

JS

$('#selectAllEventList').click (function() { 
      $('.chkbox').each(function(){ 
      $(this).prop('checked', true); 
      }); 

    }); 

HTML

<label><input type="checkbox" class="chkbox" value="12" name="Cevent[]" /> Yoga</label> 
<label><input type="checkbox" class="chkbox" value="12" name="Cevent[]" /> Yoga 1</label> 
<label><input type="checkbox" class="chkbox" value="12" name="Cevent[]" /> Yoga 2</label> 
<label><input type="checkbox" class="chkbox" value="12" name="Cevent[]" /> Yoga 3</label> 
<label><input type="checkbox" id="selectAllEventList" name="selectAllE"> Select All</label>