如何用JS实现多选框select的全选和取消全选

JavaScript013

如何用JS实现多选框select的全选和取消全选,第1张

你自己改下控件名字就可以了啊!

下面自己放连个文件试

---

1.php

<script>

function $(id){

return document.getElementById(id)

}

function checkalls(obj,form){

var bool=(obj.checked)?true:false

for(var i=0i<form.lengthi++){

form.all[i].selected=bool

}

}

</script>

<form action="2.php" method="post" >

<input type="checkbox" name="checkall" id="checkall" onclick="checkalls(this,$('select'))" checked>全选<br>

<select multiple name="select[]" id="select" size="15" style="width:210pxheight:250px">

<option value="1" selected>顿饭大幅度</option>

<option value="2" selected>大幅度</option>

<option value="3" selected>大幅缩</option>

<option value="4" selected>到司法所</option>

</select>

<INPUT TYPE="submit" value="提交">

</form>

---

2.php

<?

echo $select[0]

echo $select[1]

echo $select[2]

echo $select[3]

?>

<HTML>

 <HEAD>

<script type="text/javascript" src="./jquery-1.11.1.js"></script>

<script type="text/javascript">

$(function(){

 var checkbox = $("#test :checkbox")

 $("#test :checkbox").click(function(){

var opchek = $(this)

var level = parseInt(opchek.attr("level"))

$.each(checkbox, function(){

var _this = $(this)

if(parseInt(_this.attr("level"))< level){

if(opchek.prop("checked")){

_this.prop("checked",true)//这个方法好像是1.8+的jquery才有的

_this.attr("disabled",true)

}else{

var prevLevel = level - 1

$("#test :checkbox[level='"+prevLevel+"']").attr("disabled",false)

}

}

})

})

})

</script>

 </HEAD>

 <BODY>

<div id="test">

<input type="checkbox" id="a" level="1">查看</input>

<input type="checkbox" id="b" level="2">添加</input>

<input type="checkbox" id="c" level="3">修改</input>

<input type="checkbox" id="d" level="4">完全控制</input>

</div>

 </BODY>

</HTML>

方法:获取多选下拉框对象数组→循环判断option选项的selected属性(true为选中,false为未选中)→使用value属性取出选中项的值。实例演示如下:

1、HTML结构

<select id="test" multiple="true">

<option value="option-A">option-A</option>  

<option value="option-B">option-B</option>

<option value="option-C">option-C</option> 

<option value="option-D">option-D</option>

</select>

<input type="button" value="确定" onclick="fun()" />

2、javascript代码

function fun(){

var select = document.getElementById("test")

var str = []

for(i=0i<select.lengthi++){

if(select.options[i].selected){

str.push(select[i].value)

}

}

alert(str)

}

3、效果演示