我怎麼能做出「全部選中」鏈接,標誌着所有複選框有一個TD裏面:製作「全部標記」按鈕
<td style="padding-right:4px;padding:4px;" class="alternating">
<input name="cbPick" type="checkbox" value="88156144" />
</td>
不知道你在寫這篇文章的語言JavaScript的.. ?
我怎麼能做出「全部選中」鏈接,標誌着所有複選框有一個TD裏面:製作「全部標記」按鈕
<td style="padding-right:4px;padding:4px;" class="alternating">
<input name="cbPick" type="checkbox" value="88156144" />
</td>
不知道你在寫這篇文章的語言JavaScript的.. ?
代碼:
function checkAll(value, arr) {
$(arr).each(function() {
if (value) {
$(this).attr('checked', 'checked');
}
else {
$(this).removeAttr('checked');
}
});
}
用法:
<input type="checkbox" class="check' /><br />
<input type="checkbox" class="check' /><br />
<input type="checkbox" class="check' /><br />
<a href="#" onclick="checkAll(true, $('.check'))">Mark all</a>
P.S.
是的,它需要jQuery。 OMG OMG!
,不會使用正常的javascript – Breezer 2010-11-01 16:02:22
@Breezer:是的,它需要jQuery。 jQuery就像.NET一樣 - 像「它需要額外的軟件」這樣的評論是石器時代的空缺!! – abatishchev 2010-11-01 16:17:38
@Johnson:很高興幫助! – abatishchev 2010-11-01 16:20:52
呀JavaScript是到這裏去 的方法是一種方式的鏈接做
http://www.shiningstar.net/articles/articles/javascript/checkboxes.asp
是的,這將是JavaScript的,是這樣的:
<script type="text/javascript">
function selectAll(x) {
for(var i=0,l=x.form.length; i<l; i++){
if(x.form[i].type == 'checkbox' && x.form[i].name != 'selectAll'){
x.form[i].checked=x.form[i].checked?false:true
}
}
}
</script>
<form>
<input type="checkbox" name="selectAll" onclick="selectAll(this)" /> (Select all)<br />
<input type="checkbox" name="a" /> (A)<br />
<input type="checkbox" name="b" /> (B)<br />
<input type="checkbox" name="c" /> (C)<br />
<input type="checkbox" name="d" /> (D)<br />
<input type="checkbox" name="e" /> (E)
</form>
如果你正在緩存'x.form'的長度,那麼你也可以緩存'x.form'和'x.form [i]'。我認爲'x.form [i] .checked = x.form [i] .checked?false:true'應該是'x.form [i] .checked = x.checked'。 – Matt 2010-11-01 16:05:45
它將在Javascript中。 您將使用DOM API。
function markAll() {
var tds = document.getElementsByTagName('td');
for(var index in tds) {
var innerNode = tds[index].firstChild;
if(innerNode.tagName == 'input' && innerNode.attributes.type="checkbox")
innerNode.checked = true;
}
}
然後您需要確保標記所有鏈接的onClicked處理函數引用此函數。這段代碼還假設在ticks的內部是第一個孩子 - 否則這個代碼會更復雜。
This解決方案也不需要任何額外的庫 - 我認爲abatishchev的解決方案需要JQuery - 它看起來像JQuery。 – 2010-11-01 16:03:35
差不多你唯一的選擇將是使用Javascript。 – Pointy 2010-11-01 15:53:08