验证| required =“true”/“false”| HTML表单

时间:2018-02-06 20:09:38

标签: html html5 forms attributes

当我在做一些基本的HTML时,我想知道为什么Sublime Text 3总是将required完成到required=""。就像我在线课程中的讲师所说,没有必要设置required="true"required="false"但是当我将其设置为false时,它仍然需要它。

示例代码(即使将字段设置为tofalse也需要该字段):

<form>
    <input type="password" name="password" required="false">
    <button>Submit</button>
</form>

我希望你能解决这个困惑。谢谢你的每一个答案。

Farcher

4 个答案:

答案 0 :(得分:2)

在HTML中,required属性必须存在(该字段是必填的)或不存在(该字段 NOT 必需)。当属性存在时,它具有的无关紧要。

  

必需属性是布尔属性。指定时,元素是必需的。

     

元素上存在布尔属性表示真值,缺少属性表示假值。

关于boolean attributes

  

没有赋值给它的布尔属性(例如,检查)隐含地等同于分配了空字符串的布尔属性(即checked =&#34;&#34;)。因此,它代表了真正的价值。

     

价值观&#34;真&#34;和&#34;假&#34;不允许在布尔属性上。要表示错误值,必须完全省略该属性。

通常的做法是使用属性的名称作为

<form>
    <input type="password" name="password" required="required"><!-- this input is required -->

    <input type="text" name="sometext"><!-- this input is NOT required -->

    <button>Submit</button>
</form>

答案 1 :(得分:1)

但是,如果使用JS处理鼠标事件,则可以使用“ .prop()”方法将“ required”属性设置为“ True”或“ False”。例如

.prop("required", true) 

OR

.prop("required", false)

答案 2 :(得分:0)

required不接受布尔字符串。如果属性存在则需要它。 Sublime可能会像大多数属性一样期待一些价值。

<form>
<input type="password" name="password" required="">
<button>Submit</button>
</form>

<form>
<input type="password" name="password" required>
<button>Submit</button>
</form>

答案 3 :(得分:0)

'必需'是布尔属性。一旦存在,它就假定值为true。因此将其设置为“假”仍然会使其表现得如此真实。

以下是证明

<form>
<input type="password" name="password" required="false">
<button>Submit</button>
</form>