如何在 angularjs ui-select 指令更新后默认设置搜索字段的更新值?
how to set the updated value in searched field by default after updation in angularjs ui-select directive?
我在 angularjs ui-select 指令中遇到问题。它工作正常,它在下拉列表中显示了完整的数据。当我 select 来自搜索字段的值并想要更新它时,它已更新但默认情况下无法在搜索字段中显示。我必须再次手动搜索才能看到更新后的值。让我粘贴代码...
这是angularjs代码
$scope.consignee = [];
$http.get("get-consignee", {
}).then(function(response){
$scope.consignee = response.data;
//$scope.consignee.selected = $scope.consignee[0];
});
这里是ui-select代码
<ui-select ng-model="consignee.selected" theme="select2">
<ui-select-match placeholder="Select Consignee">
<% $select.selected.CONSIGNEE_NAME %>
</ui-select-match>
<ui-select-choices ng-repeat="e in consignee | filter: $select.search">
<div><% e.CONSIGNEE_NAME %></div>
</ui-select-choices>
</ui-select>
假设我在下拉列表中有 5 个收货人姓名,例如!
1. hamad
2. test2
3. yasin Gul
4. hamid
5. munir
所以问题是当我使用这个 $scope.consignee.selected = $scope.consignee[0];
然后在 0
索引它给我 hamad
更新后的名字,即使我更新 test2
或 yasin Gul
它默认在搜索字段中设置 hamad
。我知道我有 0
、1
、2
、3
、4
索引,但我希望它是动态的而不是手动的。我只想设置我更新的那个名字。如果我更新 test2
以便它应该在更新后在搜索字段中默认设置 test2
并且 yasin Gul
等也是如此。任何帮助将不胜感激谢谢
cons_id
是您选择的数据库 ID。
$scope.consignee = [];
$http.get("get-consignee", {
}).then(function(response){
$scope.consignee = response.data;
var index = $scope.consignee.findIndex(x => x.CONSIGNEE_ID==cons_id); // use this
$scope.consignee.selected = $scope.consignee[index];
});
我在 angularjs ui-select 指令中遇到问题。它工作正常,它在下拉列表中显示了完整的数据。当我 select 来自搜索字段的值并想要更新它时,它已更新但默认情况下无法在搜索字段中显示。我必须再次手动搜索才能看到更新后的值。让我粘贴代码...
这是angularjs代码
$scope.consignee = [];
$http.get("get-consignee", {
}).then(function(response){
$scope.consignee = response.data;
//$scope.consignee.selected = $scope.consignee[0];
});
这里是ui-select代码
<ui-select ng-model="consignee.selected" theme="select2">
<ui-select-match placeholder="Select Consignee">
<% $select.selected.CONSIGNEE_NAME %>
</ui-select-match>
<ui-select-choices ng-repeat="e in consignee | filter: $select.search">
<div><% e.CONSIGNEE_NAME %></div>
</ui-select-choices>
</ui-select>
假设我在下拉列表中有 5 个收货人姓名,例如!
1. hamad
2. test2
3. yasin Gul
4. hamid
5. munir
所以问题是当我使用这个 $scope.consignee.selected = $scope.consignee[0];
然后在 0
索引它给我 hamad
更新后的名字,即使我更新 test2
或 yasin Gul
它默认在搜索字段中设置 hamad
。我知道我有 0
、1
、2
、3
、4
索引,但我希望它是动态的而不是手动的。我只想设置我更新的那个名字。如果我更新 test2
以便它应该在更新后在搜索字段中默认设置 test2
并且 yasin Gul
等也是如此。任何帮助将不胜感激谢谢
cons_id
是您选择的数据库 ID。
$scope.consignee = [];
$http.get("get-consignee", {
}).then(function(response){
$scope.consignee = response.data;
var index = $scope.consignee.findIndex(x => x.CONSIGNEE_ID==cons_id); // use this
$scope.consignee.selected = $scope.consignee[index];
});