Javascript 在使用ng值或ng模型选择中选择选项
目前我面临着这个问题 我有这个数组和这个选择htmlJavascript 在使用ng值或ng模型选择中选择选项,javascript,html,angularjs,Javascript,Html,Angularjs,目前我面临着这个问题 我有这个数组和这个选择html $ctrl.languages = [ { key: 'Play Prompt', value: 'blank' }, { key: 'Dont Play Prompt - Assume English', value: 'Eng
$ctrl.languages =
[
{
key: 'Play Prompt',
value: 'blank'
},
{
key: 'Dont Play Prompt - Assume English',
value: 'English'
},
{
key: 'Dont Play Prompt - Assume Spanish',
value: 'Spanish'
}
];
<select class="form-control" name="vdn" ng-model="$ctrl.ivr.Language"
ng-options="item.value as item.key for item in $ctrl.languages" ng-required="true">
</select>
$ctrl.languages=
[
{
键:“播放提示”,
值:“空白”
},
{
关键:“不要玩提示-假设英语”,
价值观:“英语”
},
{
关键:“不要玩提示-假设是西班牙语”,
值:“西班牙语”
}
];
我使用该下拉列表显示每个选项的当前下拉列表中的键,并将所选选项的“value”属性保存在数据库中,但当我检索数据时,未选择带有“value”ssaved的选项
在这种情况下,如果我在数据库中保存“blank”值,我希望下拉列表中选择“Play Prompt”键
谢谢您正在将
项.value
设置为每当从下拉列表中选择选项时设置为$ctrl.ivr.Language
的值。由于
的ngModel
指令指向$ctrl.ivr.Language
,因此在控制器中将值设置为$ctrl.ivr.Language
将自动将selected=“selectd”
添加到具有匹配值的属性的下拉菜单项中
因此,如果希望“播放提示”是在数据库不包含该设置的值时在下拉列表中选择的值,则可以检查API响应中是否存在该值,如果不存在,则将$ctrl.ivr.Language='blank'
设置为默认的“播放提示”选项。这看起来很简单。
我在这里提供了一个有效的plunker:
如果你在找别的东西,请告诉我
在我的代码中,我添加了一个超时来模拟web服务调用。
以下是来自plunker的控制器代码:
app.controller('mainController', function($scope, $timeout) {
$scope.languages = [
{
key: 'Play Prompt',
value: 'blank'
},
{
key: 'Dont Play Prompt - Assume English',
value: 'English'
},
{
key: 'Dont Play Prompt - Assume Spanish',
value: 'Spanish'
}
];
$scope.ivr = {};
// Simulating Web service Call
$scope.retrievingData = true;
$timeout(function() {
$scope.ivr.Language = 'blank';
$scope.retrievingData = false;
}, 2000);
});
我正在向数据库请求value stored Language属性,如果数据库中保存了“blank”,则将检索它,我希望下拉属性根据值选择键当您说“blank”时,是指空字符串('
),还是指文字值('blank'
)?