我是angular js的新手。在我的代码中,用户更改单选按钮的值。并根据所选择的单选按钮的值,一段代码被从NG-开关加载
HTML:在使用ng-model的select中删除空选项
<body ng-app="">
<div ng-repeat="button in modes">
<label>
<input type="radio" ng-model="data.mode" value="{{button.value}}" ng-click="clearObjectIdModal()" name="e_modes">
{button.label}}
</label>
</div>
<div ng-switch on="data.mode">
<div ng-switch-when="client">
<label for="e_selected_object_item_id">Select Client name: </label>
<select id="e_selected_object_item_id" name="e_selected_object_item_id" ng-model="currentDataItem.object_id" required>
<option ng-repeat="item in customersListArr" value="{{ item.id }}">{{ item.Name }}</option>
</select>
</div>
<div ng-switch-when="agent">
// This part is similar to the previous one
</div>
</div>
</body>
控制器部分:
$scope.data = {};
$scope.setFile = function() {
if ($scope.data.mode == 'client')
return 'client';
else if ($scope.data.mode == 'agent')
return 'agent';
$scope.modes = [{
value: 'client',
label: 'Client'
},{
value: 'agent',
label: 'Agent'
}];
$scope.currentDataItem = data; // data is preloaded from inputs in form
还有一个NG点击=“clearObjectIdModal()”在切换的单选按钮时清除模型:
$scope.clearObjectIdModal = function() {
$scope.currentDataItem = "";
}
的问题是,每次当单选按钮被切换到塞莱时间ct值会动态变化,其中第一个选项的值将变为undefined。因为在构建这些选项的数组中没有这样的object_id(这是不存在的id,所以绘制了一个空的字段)。
也就是说,有所有的作品。但是select中的第一个选项(切换到另一个单选按钮之后)呈现为空字符串。
有想法,如何解决?
Tsungur,thaks为您解答您的时间。但我昨天自己解决了这个问题!) –