使用到了 简单的总结一下,要是有那个地方写的不好或者有待改进,请大家指点一下。
1 点击checkbox 事件 把值放到文本框里
1)checkbox 多选,文本框放入多个值
js :
<script type="text/javascript">
function a(cb){
var ids= document.getElementsByName("orgs");
var str="";
for(var i=0;i<ids.length;i++){
if(ids[i].checked){
str+=ids[i].value+",";
document.getElementById("ok").value=str;
}
}
}
</script>
jsp:
<%
List listYear = new ArrayList();
listYear.add("山东国资委");
listYear.add("北京国资委");
listYear.add("上海国资委");
%>
<body>
<form action="login.jsp">
<input type="text" name = "ok" id = "ok"/>
<input type="submit" name="permission" value="选择" />
</form>
<table>
<tr>
<td>选择</td>
<td>机构编码</td>
<td>机构名称</td>
</tr>
<%
for(int i=0;i<listYear.size();i++){
%>
<tr>
<td><input id="org" type="checkbox" name="orgs" value="<%=listYear.get(i).toString()%>" οnclick="javascript:a(this);"></td>
<td></td>
<td><%=listYear.get(i).toString()%></td>
</tr>
<%
}
%>
</table>
</body>
2) checkbox 单选 并把获得的值 放入文本框里 如下:
更改如上 其他不改: js
<script type="text/javascript">
function a(cb){
var ids= document.getElementsByName("orgs");
var str="";
for(var i=0;i<ids.length;i++){
//判断ids集合中的i元素是否为cb,若否则表示未被勾选
if (ids[i]!=cb) ids[i].checked = false;
//若是 但原先未被勾选則变成勾选;反之 则为未勾选
else ids[i].checked = cb.checked;
//若要至少勾选一个的話,则把上面那行else拿掉,换用下面那行
// else obj[i].checked = true;
// 把获得的值赋给相应的文本框
if(ids[i].checked){
str=ids[i].value;
document.getElementById("ok").value=str;
}
}
}
</script>