AngularJS:ngMessages不使用select中的ng选项
我已经看到了一些对ng repeat有效的答案,但对于ng选项,我面临着一个问题 问题:如果要显示所需的错误消息,请触摸下拉列表,但未选择任何内容,我可以使用输入字段执行此操作 JS代码AngularJS:ngMessages不使用select中的ng选项,angularjs,angularjs-directive,angularjs-ng-repeat,ng-options,ng-messages,Angularjs,Angularjs Directive,Angularjs Ng Repeat,Ng Options,Ng Messages,我已经看到了一些对ng repeat有效的答案,但对于ng选项,我面临着一个问题 问题:如果要显示所需的错误消息,请触摸下拉列表,但未选择任何内容,我可以使用输入字段执行此操作 JS代码 $scope.personMap = [{ name:"Abc", id:"a"}, { name:"XYZ", id:"b"}, { name:"FGH", id:"c"}, { name:"TY", id:"d"} }] HTML <select name="inpName" ng-model=
$scope.personMap = [{ name:"Abc", id:"a"},
{ name:"XYZ", id:"b"},
{ name:"FGH", id:"c"},
{ name:"TY", id:"d"}
}]
HTML
<select name="inpName" ng-model="person.name" ng-options="i as i.name for i in personMap track by i.id" required>
<option value="" selected hidden/> </select>
<div ng-messages="form.inpName.$error" ng-if="form.inpName.$touched">
<div ng-message="required">Required field</div>
</div>
</div>
必填字段
由于还没有答案,我将发布我发现的问题 因此,当我使用
ng options
时,它会在下拉列表中额外添加一行,该行可以为空,也可以提供类似“选择我”的内容
我添加了下面的代码来修复这个问题,在chrome中它没有显示任何空行
<option value="" selected hidden/> </select>
是否有人帮助我在单击选择框时触摸它?我试着在
ng click
中编写一些逻辑,但无法理解JS中的first:Correct语法。有一个太多的花括号。第二:你指的是模板中的“表单”。但是你的问题中没有表格。有吗?此外,还有一个太多的div。我建议您创建一个JSFIDLE或Plunkr@HoffZ:curely方括号是对象的数组。另外,我没有添加
标记,但它在我的代码中。@HoffZ:我也遇到了真正的问题,如果我在codepen中添加相同的代码,效果会很好,问题是我的模型正在将对象属性设置为null,因此,当我单击下拉菜单时,模型中没有任何变化,不会出现错误。但是,如果我在单击下拉菜单时设置我的model=null
,则错误消息将按预期显示。
<select name="inpName" ng-model="person.name" ng-options="i as i.name for i in personMap track by i.id" required>
<option value="">Select one </option> </select>
<div ng-messages="form.inpName.$error" ng-if="form.inpName.$touched">
<div ng-message="required">Required field</div>
</div>
</div>