提问人:user7370387 提问时间:3/22/2017 更新时间:3/22/2017 访问量:57
Angularjs 选择不是由 $scope 变量设置的
Angularjs Select not setted by $scope variable
问:
我有一个非常简单的问题:
这是我在控制器中的对象:
$scope.footballeur = {'identifiant':6,'prenom':'Thierry','nom':'Chalamerto','categorie':1,'ville':'Paris','age':17,'date_embauche':'','salaire':'28'};
请注意 int 变量 categorie 。
现在在我看来,我有一个非常简单的选择,如下所示:
<div class="input-group">
<span class="input-group-addon stdgp"></i> Catégorie</span>
<select ng-init="footballeur.categorie" ng-model="footballeur.categorie" class="form-control" >
<option value="1">Junior</option>
<option value="2">Confirmé</option>
</select>
</div><br>
然后,信不信由你,但选择无法由我的值设置。 它显示一个空白行,真的很烦人。
如果有人有想法,我将不胜感激,唯一有效的方法是删除 ng-model 并将其替换为 ng-value,但是,我无法保存用户选择的新值!
我真的不知道该怎么办,我尝试过ng-value而不是value,它仍然不起作用!我已经删除了ng-init,它仍然没有任何变化!我的SELECT里面甚至没有一个循环,它应该直接工作!
这是一张可怕情况的图片:
答:
2赞
jperelli
3/22/2017
#1
新答案(对不起,我乍一看误解了你的问题)
我认为您的问题与“选定”属性有关。试试这样的方法:
<option ng-selected="footballeur.categorie == 1" value="1">Junior</option>
旧答案
像这样进行选择
<select ng-model="footballeur_selected" class="form-control">
<option ng-repeat="(fname, fvalue) in footballeur" value="{{fvalue}}">{{fname}}</option>
</select>
评论
1赞
user7370387
3/22/2017
太棒了,你的新答案效果很好,非常感谢,我以为是自动的,但显然不是!
1赞
Ben
3/22/2017
#2
研究使用来设置选项。ng-options
<select>
示例 (HTML):
<select class='form-control'
ng-model="mySelectedOption"
ng-options="myOptions">
</select>
示例 (JS):
$scope.myOptions = [
{ id: "option1", name: "Option 1" },
{ id: "option2", name: "Option 2" },
{ id: "option3", name: "Option 3" }
];
0赞
Ankit Dhanna
3/22/2017
#3
它自动工作!ng-init 不是这样工作的。它很容易用于计算表达式。
即使没有 ng-init,您的代码也可以正常工作。
<select ng-model="footballeur.categorie" class="form-control" >
<option value="1">Junior</option>
<option value="2">Confirmé</option>
</select>
在此处查看实现。
评论