2014-01-08 153 views
0

我定義選中的複選框的數組:了JavaScript複選框被選中,添加複選框ID到一個數組

<script> 
var all_checked = new Array(); 
function add_checked(checked_checkbox_id) 
{ 
all_checked.push(checked_checkbox_id); 
} 

<html> 
<input type="checkbox" name="a" id="1" value="1" onclick="add_checked(?????);" /> 
</html> 

所以我的問題是如何將選中的複選框ID傳遞給函數追加到全球

all_checked

可變

+0

看看這個問題的http://stackoverflow.com/questions/6901242/jquery-get-the-ids-of-the-checked-and - 不是 - 檢查 - 複選框 – swan

回答

2

this內的功能的d然後用它來獲得id屬性:

HTML

<input type="checkbox" name="a" id="1" value="1" onclick="add_checked(this);" /> 

的JavaScript

var all_checked = new Array(); 
function add_checked(el) { 
    all_checked.push(el.id); 
} 

請記住,這將推動id到數組無論什麼時候,無論是框被選中或取消選中,即使id已經存在於陣列中。

JSFiddle

1

ù se this關鍵字通過傳遞給yout函數。

onclick="add_checked(this)"; 

在這裏,您可以將ID爲

this.id 

然後在

function add_checked(checked_checkbox) { 
    all_checked.push(checked_checkbox.id); 
} 

FYI:script標籤應該是html標籤

0

HTML:

<button onclick="send_query(document.getElementsByTagName('input'))"> 

function send_query(check) { 

    var values = []; 
    for (i = 0; i < check.length; i++) { 
     if (check[i].checked == true) { 
      values.push(check[i].value); 
     } 
    } 
    console.log(values.join()); 
} 
相關問題