当我在做一些基本的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
答案 0 :(得分:2)
在HTML中,required属性必须存在(该字段是必填的)或不存在(该字段 NOT 必需)。当属性存在时,它具有的值无关紧要。
必需属性是布尔属性。指定时,元素是必需的。
元素上存在布尔属性表示真值,缺少属性表示假值。
没有赋值给它的布尔属性(例如,检查)隐含地等同于分配了空字符串的布尔属性(即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>