[英]struts2 radio button id attribute value is changing dynamically
我有一个脚本功能,需要检查是否选中了任何单选按钮。 我正在使用id属性。
<s:radio id="gender" name="bean.gender" list="#{'male':'male','female':'female'}"/>
并在javascript中进行如下检查:
if (radVal(document.forms[0].gender) == "") {
alert("enter gender");
document.forms[0].gender[0].focus();
return false;
}
function radVal(radName) {
var radioVal = "";
for (var i = 0; i < radName.length; i++) {
if (radName[i].checked) {
radioVal = radName[i].value;
}
}
return radioVal;
}
并且在运行时将ID视为“ gendermale”和“ genderfemale”,因此无法获取正确的ID。
由于页面中的每个id
都必须唯一,并且<s:radio>
标记正在生成多个HTML标记,因此它会生成多个id
;因此,
但是,真正的错误是,您正在单选按钮之间进行循环浏览,就像它们是否是复选框一样,而不是。
单选按钮仅允许选择一种 。
按名称获取元素并读取值,以获取所选元素;如果未选择任何元素,则为空。
通常您可以使用点符号 ( .
)
document.forms[0].bean.gender.value
但是由于您的名字中带有点,因此必须使用其他语法( [""]
):
document.forms[0]["bean.gender"].value
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.