2010-06-15 52 views
2

我有輸入複選框,這樣的事情..如何獲得輸入複選框ID值使用JavaScript?

<input class="inputchbox" id="Pchk" type="checkbox" name="check" value="<%=Model.ID%>" /> 

使用JavaScript我需要獲得所有複選框到陣列檢測IDS?

我該如何獲得?

謝謝

+0

其他複選框在哪裏?您使用什麼控制來對複選框進行分組?你可以使用jQuery嗎? – Thea 2010-06-15 19:43:54

+0

我起訴jquery,但我沒有得到所有的複選框id ..在IE8 ..但我越來越火狐.. – user354625 2010-06-15 19:45:15

+0

相同的輸入複選框生成不同的id .. – user354625 2010-06-15 19:45:42

回答

4

純JavaScript答案

var formelements = document.forms["your form name"].elements; 
var checkedElements = new Array(); 
for (var i = 0, element; element = formelements[i]; i++) { 
    if (element.type == "checkbox" && element.checked) [ 
    checkedElements.push(element); 
    } 
} 

jQuery的答案

$("input:checked") 
1

像這樣的東西應該工作。

var inputs = document.getElementsByTagName("input"); 
var checks = []; 
for (var i = 0; i < inputs.length; i++) { 
    if (inputs[i].type == "checkbox" && inputs[i].checked) { 
    checks .push(inputs[i]); 
    } 
} 

使用jQuery你可以這樣做:

var checks= $("input:checkbox:checked"); 
+0

這不工作在IE8? var checks = $(「input [@ type = checkbox]:checked」); – user354625 2010-06-15 20:05:39

+0

'@ type'?我認爲'@'被留在jQuery 1.2.6中。 :o) – user113716 2010-06-15 20:09:45

+0

我需要使用什麼? – user354625 2010-06-15 20:14:19

2

這看起來像是解決您的問題嗎? Parse page for checkboxes via javascript

基本上,您會得到<input type="checkbox">標記的元素,並驗證checked屬性的計算結果是否爲true。

注:我不確定我的回答應該是評論還是答案 - 這幾乎看起來像重複的問題?

0

請試試這個:

var checkboxes = new Array(); 

    var $checkboxCtrls = $('input[type=checkbox]'); 

    $.each($checkboxCtrls,function(i,ctrl){ 

     checkboxes.push($(this).attr('id')); 

    }); 

小提琴鏈接獲取幫助:http://jsfiddle.net/gJeCT/1/

  • 注:IE,評論控制檯日誌語句,並使用alert(),例如控制檯日誌記錄在支持除IE版本之外的所有瀏覽器。
相關問題