gpt4 book ai didi

javascript - document.forms.value 仅在 IE 中返回 "undefined"

转载 作者:行者123 更新时间:2023-11-28 17:37:22 24 4
gpt4 key购买 nike

所以我有一个表格。在这种形式中,我有一个单选按钮:

<span>
<label>
<input type="radio" name="mature" value="0">
All Ages
<span class="checkmark"></span>
</label>

<label>
<input type="radio" name="mature" value="1">
18+
<span class="checkmark"></span>
</label>
</span>

但是,在我对此表单的 JS 验证中,我注意到在 Internet Explorer 中,此单选按钮始终会返回错误。

if (document.forms["imageSubmit"]["mature"].value == "" || document.forms["imageSubmit"]["mature"].value == null) {
alert(document.forms["imageSubmit"]["mature"].value);
return false;
}

因此,例如在这种情况下,警报将始终返回“未定义”。但是,同样,仅在 Internet Explorer 中。

为什么会发生这种情况?

编辑:

感谢您的重定向。我已经像这样调整了我的代码:

var mature = document.getElementsByName('mature');
var matureValue = false;

for(var i=0; i<mature.length;i++){
if(mature[i].checked == true){
matureValue = true;
}
}
if(!matureValue){
alert("Please fill the Viewing Restrictions field.");
return false;
}

最佳答案

您有多个同名元素。

document.forms["imageSubmit"]["mature"] 是一个集合,而不是单个元素。

您需要循环遍历它(就像数组一样),直到找到具有真正的 checked 属性的那个。

在 HTML 5 中,radio buttons are special cased因此它们的集合将有自己的 value 属性,表示当前选中的单选按钮。 Internet Explorer 太旧,无法支持此功能。

关于javascript - document.forms.value 仅在 IE 中返回 "undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48795126/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com