javascript checked设置选中问题
document.getElementById('s1').onclick=function(){vars=document.getElementsByTagName('...
document.getElementById('s1').onclick = function () {
var s = document.getElementsByTagName('input');
for (var i = 0; i < s.length; i++) {
//alert(s[i].innerHTML);
s[i].checked = ' ';
}
}
document.getElementById('s2').onclick = function () {
var s2 = document.getElementsByTagName('input');
for (var i = 0; i < s2.length; i++) {
s2[i].checked ='';
}
}
document.getElementById('s3').onclick = function () {
var s2 = document.getElementsByTagName('input');
for (var i = 0; i < s2.length; i++) {
if (s2[i].checked) {
s2[i].checked = '';
} else {
s2[i].checked = ' ';
}
}
}
}
-------------------------------------------------------------------------------------
<ul>
<li><input type="checkbox" name="name" value="" />爱情买卖</li>
<li><input type="checkbox" name="name" value="" />理想三旬</li>
<li><input type="checkbox" name="name" value="" />最炫民族风</li>
<li><input type="checkbox" name="name" value="" />江南style</li>
<li><input type="checkbox" name="name" value="" />最美情侣</li>
</ul>
<input type="button" id="s1" name="name" value="全选" />
<input type="button" id="s2" name="name" value="全不选" />
<input type="button" id="s3" name="name" value="反选" />
-----------------------------------------------------------------------------
拜托大神帮我看下,为啥我在checked那里设置checked=‘’(输入任意字符)‘’等同于true。checked=‘’(空字符)‘’等同于false!
checked=‘’‘’ 展开
var s = document.getElementsByTagName('input');
for (var i = 0; i < s.length; i++) {
//alert(s[i].innerHTML);
s[i].checked = ' ';
}
}
document.getElementById('s2').onclick = function () {
var s2 = document.getElementsByTagName('input');
for (var i = 0; i < s2.length; i++) {
s2[i].checked ='';
}
}
document.getElementById('s3').onclick = function () {
var s2 = document.getElementsByTagName('input');
for (var i = 0; i < s2.length; i++) {
if (s2[i].checked) {
s2[i].checked = '';
} else {
s2[i].checked = ' ';
}
}
}
}
-------------------------------------------------------------------------------------
<ul>
<li><input type="checkbox" name="name" value="" />爱情买卖</li>
<li><input type="checkbox" name="name" value="" />理想三旬</li>
<li><input type="checkbox" name="name" value="" />最炫民族风</li>
<li><input type="checkbox" name="name" value="" />江南style</li>
<li><input type="checkbox" name="name" value="" />最美情侣</li>
</ul>
<input type="button" id="s1" name="name" value="全选" />
<input type="button" id="s2" name="name" value="全不选" />
<input type="button" id="s3" name="name" value="反选" />
-----------------------------------------------------------------------------
拜托大神帮我看下,为啥我在checked那里设置checked=‘’(输入任意字符)‘’等同于true。checked=‘’(空字符)‘’等同于false!
checked=‘’‘’ 展开
1个回答
展开全部
这是因为任何非空字符串都等价于True,而空字符串则等价于False
同样,任何非零数值等价于True,而0等价于False
但是,你的代码中最好明确指定true或false(而不要用字符串),这样可以让程序减少一个自动转换的过程,提高运行速度,比如
s2[i].checked ='';
要改为
s2[i].checked = false;
最后补充说一下:
if (s2[i].checked) {
s2[i].checked = '';
} else {
s2[i].checked = ' ';
}
改成:
s2[i].checked=!s2[i].checked;
会不会显得很酷?
同样,任何非零数值等价于True,而0等价于False
但是,你的代码中最好明确指定true或false(而不要用字符串),这样可以让程序减少一个自动转换的过程,提高运行速度,比如
s2[i].checked ='';
要改为
s2[i].checked = false;
最后补充说一下:
if (s2[i].checked) {
s2[i].checked = '';
} else {
s2[i].checked = ' ';
}
改成:
s2[i].checked=!s2[i].checked;
会不会显得很酷?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询