js操作input控件【radio、checkbox】

这篇博客介绍了如何使用JavaScript操作HTML中的input元素,特别是针对checkbox和radio类型的控件。内容包括获取选中的checkbox值、动态添加radio控件及其相关事件绑定。示例代码展示了在不同浏览器环境下创建和操作这些元素的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>js操作input控件</title>
</head>
<script language="javascript">
function aa(){
var r=document.getElementsByName("r");
for(var i=0;i<r.length;i++){
if(r[i].checked){
alert('选择的checkbox为:'+r[i].value+","+r[i].nextSibling.nodeValue);
}else
alert(+r[i].value+","+r[i].nextSibling.nodeValue);
}
/*    nextSibling是获得当前对象的下一个对象
nodeValue是返回一个节点的值
radio道理一样
*/
}
function bb(){
for(var i=0;i<4;i++){
var ele=createElement('input','name','radio','value'+i);
var span=document.createElement('span');
span.id='span'+i;
span.innerText='span'+i;
div.appendChild(ele);
div.appendChild(span);
}
/*
如果循环给控件添加事件,例如
ele.οnclick=createElement('input','name','radio','value'+i);
将无法达到预期的目的,建议采用以下方法
document.createElement('<input id="dd" οnclick=""/>');
但是次方法火狐浏览器不支持。
*/
}
function createElement(tagName,name,type,value)//动态添加input
{
var element = null;
try {//次方法针对ie
element = document.createElement('<'+tagName+' name="'+name+'" />');
element.type = type;
element.value = value;
}
catch (e){}
if (!element){//如果用此方法添加,ie6以上浏览器,所看到的radio将不能被点击
element = document.createElement(tagName);
element.setAttribute("type",type);
element.setAttribute("name",name);
element.setAttribute("value",value);
}
return element;
}
</script>
<body>
<input type="checkbox" name="r" value="1">a<br>
<input type="checkbox" name="r" value="2">b<br>
<input type="checkbox" name="r" value="3">c<br>
<input type="checkbox" name="r" value="4">d<br>
<input type="checkbox" name="r" value="5">e<br>
<br>
<input type="button" οnclick="aa()" value="显示checkbox的值和后面的文本"/>
<input type="button" οnclick="bb()" value="动态添加radio"/>
<div id="div">动态添加radio:<br></div>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值