html中-css中 - 以ul 和 li标签双层结构为例
js中
1,定义一个init方法, 完成处理数据 并把最后选中的数据返回
1.通过getArr方法, 挂载了li元素的点击事件liClick方法, 并返回处理好的数据arr,checkbox的话arr里面是多条选中的,radio则为单条
通过array的特性来达到return返回的数据同步
2.根据传递过来的type类型判断是单选框还是复选框, 来调用不同的处理函数checkboxFun或radioFun
3.checkboxFun完成了复选框的一些数据处理操作 , , radioFun 完成了单选框的一些数据处理操作
2, 获取子元素集合, 并调用init函数,
init函数调用并会返回一个newArr, 这个newArr就是最新的数据集合
这样就可以实现一个单选多选的功能了
本文实例讲述了js使用DOM设置单选按钮、复选框及下拉菜单的方法。分享给大家供大家参考。具体实现方法如下:1.设置单选按钮
单选按钮在表单中即<input
type="radio"
/>它是一组供用户选择的对象,但每次只能选一个。每一个都有checked属性,当一项选择为ture时,其它的都变为false.
先贴上一个例子:
复制代码
代码如下:<script
type="text/javascript">
function
getChoice()
{
var
oForm
=
document.forms["uForm1"]
var
aChoices
=
oForm.camera
for
(i
=
0
i
<
aChoices.length
i++)
//遍历整个单选项表
if
(aChoices[i].checked)
//如果发现了被选中项则退出
break
alert("相机品牌是:"
+
aChoices[i].value)
}
function
setChoice(iNum)
{
var
oForm
=
document.forms["uForm1"]
oForm.camera[iNum].checked
=
true
}
</script>
<form
method="post"
name="uForm1"
action="addInfo.aspx">
相机品牌:
<p>
<input
type="radio"
name="camera"
id="canon"
value="Canon">
<label
for="canon">Canon</label>
</p>
<p>
<input
type="radio"
name="camera"
id="nikon"
value="Nikon">
<label
for="nikon">Nikon</label>
</p>
<p>
<input
type="radio"
name="camera"
id="sony"
value="Sony"
checked>
<label
for="sony">Sony</label>
</p>
<p>
<input
type="radio"
name="camera"
id="olympus"
value="Olympus">
<label
for="olympus">Olympus</label>
</p>
<p>
<input
type="radio"
name="camera"
id="samsung"
value="Samsung">
<label
for="samsung">Samsung</label>
</p>
<p>
<input
type="radio"
name="camera"
id="pentax"
value="Pentax">
<label
for="pentax">Pentax</label>
</p>
<p>
<input
type="radio"
name="camera"
id="others"
value="其它">
<label
for="others">others</label>
</p>
<p>
<input
type="submit"
name="btnSubmit"
id="btnSubmit"
value="Submit"
class="btn">
</p>
<p>
<input
type="button"
value="检测选中对象"
onclick="getChoice()">
<input
type="button"
value="设置为Canon"
onclick="setChoice(0)">
</p>
</form>
<!DOCTYPE HTML><html>
<head>
<meta charset="UTF-8" />
<title>last.html</title>
<style type="text/css">
</style>
<script type="text/javascript">
onload = function ()
{
var inputs = document.querySelectorAll('input[type=radio]')
var fun = function (i)
{
var input = inputs[i]
if (input.type == 'radio')
{
input.onclick = function ()
{
alert(this.value)
}
}
}
for ( var i = 0 i < inputs.length i++)
{
fun (i)
}
}
</script>
</head>
<body>
<input id="radio1" type="checkbox" name="chkbox" value="1" onclick="DoCheck()" />A单元
<br />
<input id="radio0" type="radio" name="radio1" value="60" onclick="Do1Check(60,1,1,1)" />1、套餐A。费用:60元
<br />
<input id="radio1ww" type="radio" name="radio1" value="199" onclick="Do1Check(199,1,2,1)" />2、套餐B。费用:70元
<br />
<input id="radio2" type="checkbox" name="chkbox" value="2" onclick="DoCheck()" />B单元
<br />
<input id="radio6" type="radio" name="radio2" value="100" onclick="Do1Check(100,2,7,1)" />1、套餐A。费用:100元
<br />
<input id="radio7" type="radio" name="radio2" value="800" onclick="Do1Check(800,2,8,1)" />2、套餐B。费用:200元
<br />
<input id="radio8" type="radio" name="radio2" value="1399" onclick="Do1Check(1399,2,9,1)" />3、套餐C。费用:300元
<br />
</body>
</html>