AngularJs:选择在使用ng-repeat时不显示任何选项的下拉列表
AngularJs: Select dropdown not showing any options while using ng-repeat
这是形式:它有两个文本字段和一个选择下拉字段
<form class="ui form" name="personalInfoForm" ng-repeat="obj in users">
<div class="field">
<div class="two fields">
<div class="field ui right icon input">
<input id="id_first_name"
placeholder="Reference Number"
name="{{ obj.name }}"
type="text"
ng-model="user.first_name" required/>
<i ng-show="personalInfoForm.first_name.$valid && personalInfoForm.first_name.$dirty"
class="tiny green checkmark icon"></i>
<i ng-show="personalInfoForm.first_name.$invalid && personalInfoForm.first_name.$dirty"
class="tiny red remove icon"></i>
</div>
<div class="field ui right icon input">
<input id="id_last_name" placeholder="Date [dd-mm-yyyy]"
name="{{ obj.date }}"
type="text" ng-model="user.date" required/>
<i ng-show="personalInfoForm.last_name.$valid && personalInfoForm.last_name.$dirty"
class="tiny green checkmark icon"></i>
<i ng-show="personalInfoForm.last_name.$invalid && personalInfoForm.last_name.$dirty"
class="tiny red remove icon"></i>
</div>
</div>
</div>
<div class="field">
<select class="ui dropdown" name="gender" ng-model="user.gender" required>
<option ng-repeat="val in obj.gender" value="{{val}}">{{val}}</option>
</select>
<i ng-show="personalInfoForm.gender.$valid && personalInfoForm.gender.$dirty"
class="tiny green checkmark icon"></i>
<i ng-show="personalInfoForm.gender.$invalid && personalInfoForm.gender.$dirty"
class="tiny red remove icon"></i>
</div>
<input ng-disabled="personalInfoForm.$invalid" ng-show="!hasFormBeenEdited" ng-click="update(user)"
value="Go to next step"
class="ui right floated blue button"
type="submit"/>
<input ng-disabled="personalInfoForm.$invalid" ng-click="maintainUsers(user)"
value="Enter another item"
class="ui right floated blue button"
type="submit"/>
</form>
这是我控制器中的数据:
var forms = {
name: "first_name",
date: "date",
gender: ["debtor", "Male", "Female"]
};
$scope.users = [forms];
但是,它会显示检查器中的所有选项,以及额外的选项:
<option value="? undefined:undefined ?"></option>
在顶部! 我不明白这段代码有什么问题!
您可以通过这种方式为您的选择选择默认值
<select class="ui dropdown" name="gender" ng-model="user.gender"
ng-options="val as val for val in obj.gender"
required>
</select>
并在控制器中,为此选择指定默认值
$scope.user = {gender: forms.gender[0]};
出现未定义的值是因为最初没有与选项中的值绑定任何内容。此外,我建议您使用ng-options而不是ng-repeat。
代码是这样的,
<select class="ui dropdown" name="gender" ng-model="user.gender" ng-options = "val as val for val in obj.gender" required>
<option value="">Choose an option</option>
</select>
"选择一个选项"是为了摆脱出现在选择值中的空选项。
相关文章:
- D3.js生成有效的SVG,但不显示任何内容
- HTML 5 和 3.js 代码不会在网页上显示任何内容
- jquery Ajax没有;不要显示任何信息(既不显示成功也不显示失败)
- javascript函数,该函数不起作用,但不会显示任何错误
- JavaScript 未显示任何警报对话框
- 谷歌地图没有显示任何标记
- 没有使用Highcharts显示任何图形
- jQuery导航下拉菜单未显示..任何想法
- AngularJS:console.log不显示任何内容
- ng-repeat不显示任何内容
- ng-重复不显示任何内容
- extjs在chrome中可以正常工作;不要在firefox或ie中显示任何内容
- 使用javascript在标签上不显示任何内容
- console.log在FF插件生成器中没有显示任何内容
- TypeAhead.js没有显示任何输出Rails
- 使用ajax运行php脚本不会显示任何结果
- 我的Javascript项目正在访问网络摄像头,但没有显示任何内容
- 日期-时间范围指令字段未显示任何值
- owl.carousel help-没有显示任何东西
- PhoneGap-Javascript没有显示任何响应