
CheckBox复选框JS实现全选全不选功能,很简单,就只需插入一小段js函数就行了。。。
<script language="javascript">function cli(Obj)
{
//获取控制其它复选框的对象obj
var collid = documentgetElementByIdx_x("all")
//获取需要全选,全不选功能的所有复选框
var coll = documentgetElementsByName(Obj)
//如果obj被选中,则全选
if (collidchecked){
//循环设置所有复选框为选中状态
for(var i = 0; i < colllength; i++)
coll[i]checked = true;
}else{//取消obj选中状态,则全不选
//循环设置所有复选框为未选中状态
for(var i = 0; i < colllength; i++)
coll[i]checked = false;
}
}
</script>
----------------------------------------------------
下面是一组CheckBox复选框html代码
----------------------------------------------------
<input name='多选项名称' type='checkbox' value='' id="all" onclick="cli('多选项名称');"> 全选<input name='多选项名称' type='checkbox' value='' > A
<input name='多选项名称' type='checkbox' value='' > B
<input name='多选项名称' type='checkbox' value='' > C
<input name='多选项名称' type='checkbox' value='' > D
<input name='多选项名称' type='checkbox' value='' > E
<input name='多选项名称' type='checkbox' value='' > F
----------------------------------------------------
这样做不方面吧,比如现在我选择了slt1的某项,之后我后悔了,想选择slt2(或其它的),我得先将slt1选为空后才可以 *** 作其它slt,当然了也可以刷新页面重新填(但前面填的信息都没了)。建议改为:不管是选择哪个slt,都将值写到一个公共的地方,如文本框中或隐藏域中,这样后面选择的会覆盖前面的内容,也就达到了任何时候都只能选择一项的目的。<body>
<font size="6" color="red">兴趣爱好:</font><br />
<input type="checkbox" name="hobby" value="basketball"/>篮球
<input type="checkbox" name="hobby" value="football"/>足球
<input type="checkbox" name="hobby" value="tabletennis"/>乒乓球
<input type="checkbox" name="hobby" value="volleyball"/>羽毛球
<input type="checkbox" name="hobby" value="swiming"/>游泳
<script>
var i=0;
var box=documentgetElementsByName("hobby");
for( var j=0;j<boxlength;j++){
box[j]onclick=function(){
if(thischecked){
i++;
if(i>=3){
for(k=0;k<boxlength;k++){
if(!box[k]checked){
box[k]disabled=true;
}
}
}
}else{
i--;
for(k=0;k<boxlength;k++){
if(box[k]!=this){
box[k]disabled=false;
}
}
}
}
</script>
</body>我写了个例子,你试试:
<html>
<head>
<title>jsTest</title>
</head>
<body>
<select id="sel"><option>a</option><option>b</option></select>
<input type="text" id="txt">
<input type="button" value="show" onclick="show()">
</br>
<p id="p1">
下拉框和文本框内容将显示在这里:
</br>
</p>
<script>
function show()
{
var node = documentcreateTextNode(seloptions[selselectedIndex]value +
"," + txtvalue);
p1removeChild(p1lastChild);
p1appendChild(node);
}
</script>
</body>
</html>
给
<!DOCTYPE html>
<html xmlns=">
<head>
<script id="script" type="text/javascript" src=">
</head>
<body>
<select id="c">
<option value="1">1个</option>
<option value="2">2个</option>
<option value="3">3个</option>
</select>
<input type="checkbox" name="">
<input type="checkbox" name="">
<input type="checkbox" name="">
<input type="checkbox" name="">
<input type="checkbox" name="">
<script type="text/javascript">
var $cbs=$('input:checkbox');
var cc = 0;
$('#c')change(function(){
$cbsprop('checked',false);
cc = 0
});
$cbsclick(function(){
var sc = parseInt($('#c option:selected')val());
if($(this)prop('checked')){
if(cc+1>sc)
return false;
cc++;
}else{
cc--;
}
});
</script>
</body>
</html>
Hi,你的 *** 作就是当已经选择过的情况下你需要删除掉数组的相应值。我帮你改写了一下,数组值需要存储选框的下标就可以了的。
<script language="javascript">
var sel = [];
function OnClick() {
var i_ts_desc = documentgetElementById("i_ts_desc");
var index = i_ts_descselectedIndex;
var iHas = -1;
selsort();
for (var i = 0; i < sellength; i++) {
if (sel[i] == index) {
iHas = i;
} else {
i_ts_desc[sel[i]]selected = true;
}
}
if (iHas == -1) {
selpush(index);
i_ts_desc[index]selected = true;
} else {
selsplice(iHas, 1);
i_ts_desc[index]selected = false;
}
}
</script>
<select id="i_ts_desc" multiple="multiple" onclick="OnClick();" >
<option value="A">0</option>
<option value="B">1</option>
<option value="C">2</option>
<option value="D">3</option>
<option value="E">4</option>
<option value="F">5</option>
</select>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)