我有一个javscript函数,我需要检查是否有任何单选按钮被检查。我正在使用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视为&#39; gendermale&#39;和&#39; genderfemale&#39;,所以我无法获得正确的身份。
答案 0 :(得分:1)
由于页面中的每个id
都必须是唯一的,并且<s:radio>
标记生成多个HTML标记,因此它会生成多个id
s;
单选按钮只允许一个选项。
按名称获取元素并读取值,以获取所选元素,如果没有选择,则读取空白。
通常您可以使用点符号(.
)
document.forms[0].bean.gender.value
但由于你的名字中有一个点,你必须使用其他语法([""]
):
document.forms[0]["bean.gender"].value