要求和ng要求有什么区别?
required
和ng-required
(表单validation)有什么区别?
AngularJS表单元素查找required
属性来执行validationfunction。 ng-required
允许您根据布尔testing设置required
属性(例如,只需要字段B – 例如学生号码 – 如果字段A具有特定值 – 如果select了“学生”作为select )
例如, <input required>
和<input ng-required="true">
实质上是相同的
如果你想知道为什么这样,(而不是仅仅使得<input required="true">
或<input required="false">
),这是由于HTML的限制 – required
属性没有关联的值- 它仅仅是存在的手段(按照HTML标准)该元素是必需的 – 所以angular度需要一种方法来设置/取消设置所需的值( required="false"
将是无效的HTML)
我想为蒂亚戈的回答做个插件:
假设你使用ng-show
来隐藏元素,并在相同的位置添加一个required
属性:
<div ng-show="false"> <input required name="something" ng-model="name"/> </div>
会抛出一个错误,如:
名称=“”的无效表单控件不可聚焦
这是因为你不能对hidden
元素进行required
validation。 使用ng-required
使条件性地应用所需的validation变得更加容易!
HTML属性 required="required"
是一条语句,告诉浏览器该表单是有效的。 ( required="required"
是XHTML表单,只是使用required
是等价的)
Angular属性 ng-required="yourCondition"
表示“isRequired(yourCondition)”,并根据您的情况为您dynamic设置HTML属性。
另外请注意, HTML版本很混乱 ,不可能写一些像required="true"
或required="false"
,只有属性的存在很重要(现在的意思是真的)! 这是Angular帮助你用ng-required
。