使用nextSibling获取checkbox后面的文本内容,并传给后台

获取checkBox的文本值,用逗号隔开传给后台。

代码如下图所示:
在这里插入图片描述

<div class="control-group">
	<label class="control-label">所属区:</label>
		<div class="controls">
			<c:forEach items="${areaList}" var="a">
				<input id="manageAreaCode" name="manageAreaCode" type="checkbox" value="${a.code}" <c:if test="${fn:contains(user.manageAreaCode, a.code)}">checked</c:if>/>${
    
    a.name}
			</c:forEach>
			<input type="hidden" id="manageAreaName" name="manageAreaName" value="${user.manageAreaName}" />
		</div>
	</div>

nextSibling是获得当前对象的下一个对象
nodeValue是返回一个节点的值

<script type="text/javascript">
var paramName = ""; //获取参数
var position = document.getElementsByTagName("input");//获取页面上所有的input
//获取监测参数
for(var i = 0; i < position.length; i++) {
    
    
	if(position[i].name == "manageAreaCode" && position[i].checked == true) {
    
    
		paramName += (position[i].nextSibling.nodeValue + ","); // 得到checkBox文本内容,并用,隔开
	}
}
$("#manageAreaName").val(paramName.substring(0,paramName.length-1));
</script>

亲测真实有效,因为用的是原生的form表单提交,所以个人感觉有点麻烦。

猜你喜欢

转载自blog.csdn.net/li22356/article/details/124862659