2015-09-04 51 views
0

我有這樣的代碼:如何使用jQuery變量,「輸入:檢查」

var counter = $(buildStep5 'input:checked').length; 

buildStep5是抱着我的HTML文檔中的第五形式標記的變量。我無法讓我的代碼行工作。

我想知道變量buildStep5內部有多少個複選框。

+2

'$(buildStep5 + '輸入:選中')的長度;'? 'buildStep5'裏面有什麼? '#form5'或'.form5'什麼的? – putvande

+0

'buildStep5'是一個選擇器還是實際的形式(節點)? – Andreas

+0

要解釋@putvande評論 - 您需要'buildStep5'和'input'之間的空格 - 假如這是一個錯字,還需要一個「+」加入它們。 –

回答

0

您可以使用jQuery選擇器的第二個參數來限制搜索。這可以是一個參考一個元素,或者它本身可以是一個字符串選擇器

var buildStep5 = $('#form5'); 
var counter = $('input:checked',buildStep5).length 

var counter = $('input:checked','#form5').length 

這裏的一個(略做作)的例子。

var buildStep5 = $('#form5'); 
 
var counter = $("input:checked",buildStep5).length; 
 
alert(counter);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form></form> 
 
<form></form> 
 
<form></form> 
 
<form></form> 
 
<form id="form5"> 
 
    <input type="checkbox"><input type="checkbox"><input type="checkbox" checked><input type="checkbox" checked><input type="checkbox"> 
 
</form>

+1

jQuery選擇器的第二個參數是我忘記的東西。非常感謝。 – user1592980

+0

你是最受歡迎的:) – Jamiec

0

或者,如果不工作,做

var theFrm = buildStep5 + ' input:checked'; 
$(theFrm).length; 
+0

你是什麼意思_或者如果不工作_?它不工作。 – putvande

+0

OP爲什麼要「嘗試這個」?一個好的答案將總是解釋做了什麼以及爲什麼這樣做,不僅是爲了OP,而且是爲了將來SO的訪問者。 –