我的下拉菜单出现问题。我已经设置好它,使它在点击时生成 - 但是当它不能正常渲染时。请参阅附件图片(http://imgur.com/a/0GiRZ)。它需要第二次点击才能展开下拉菜单。HTML和AngularJS的下拉渲染问题
这是我的HTML代码:
<div class="form-group" ng-show="system.properties[0].value.target.connection.target_type === 'hive'">
<label class="col-sm-3 control-label" for="sdb">Database</label>
<div class="col-sm-7" >
<select class="form-control" ng-model="system.properties[0].value.target.connection.target_db" ng-click="db()">
<option ng-repeat="d in database" value={{d.name}}>{{d.name}}</option>
</select>
</div>
</div>
角:
// Calls DB preview
$scope.db = function() {
systemFactory.getDB(dbParam).then(function successCallback (result) {
$scope.database = result.data.Data;
})
};
厂:
getDB: function(data) {
var settings = {
method: 'POST',
data: data,
headers: {'Content-Type': 'application/json; charset=UTF-8'},
url: config.webserviceNonHTZ + "/getPreview",
withCredentials: true
};
我不知道是什么原因造成的问题 - 唯一的事情,我可以想到的是ng-click。我尝试使用ng-change,但没有解决问题。
感谢您的帮助。
为什么'$ scope.db'是一个函数,也是一个数组? – tanmay
你能提供你的systemFactory.getDB方法吗? –
谢谢@tanmay。我没有意识到我有他们两个名为$ scope.db。将其结果名称更改为$ scope.database。 – Heather