【发布时间】:2013-10-19 16:44:39
【问题描述】:
我有一个简单的表单,其中包含一些必填字段。
<form name="form" method="post">
<pre>
<label> Name: </label><input type="text" name="name" required>
<label> Address: </label><input type="text" name="add" required>
<label>Telephone: </label><input type="text" name="tel">
<input type="submit" value="Submit Form">
</pre>
</form>
我知道您可以使用document.forms['form']['name'].required = false 设置所需的属性。但是有没有一种方法可以检查是否设置了所需的属性?我尝试使用getattribute(),但它只是返回空白。我也尝试使用下面的代码,但它总是执行语句,即使未设置所需的属性(例如在电话字段上)。
if( document.forms['form']['name'].required = true)
label.innerHTML += " (required)"
有谁知道我可以做到这一点的方法吗?
更新: 将 if 语句设置为 == 而不是 = 和使用 hasAttribute 都有效,谢谢。
【问题讨论】:
-
在
if()中将其设为==。或者实际上执行alert("value: " + document.forms['form']['name'].required);之类的操作并检查该值。 -
也许我不明白,但如果
getAttribute返回null或"",则表示该元素上不存在该属性,这是您想知道的。 -
您需要检查,而不是分配。它应该可以工作,即检查
if(document.forms['form']['name'].required)。在这里你分配而不是测试,因为=总是返回true。
标签: javascript html forms required