我有2个相同的指令彼此相邻(<jd-autocomplete>
),其中第2个ng-model
值应根据所选的第1个值设置。
<jd-autocomplete>
指令采用名为ac-change
(函数)的范围属性,当该指令内的<input>
发生更改时,将调用该属性。
看起来像这样:
<form>
<jd-autocomplete ac-change="doChange" ng-model="entry.vendor"></jd-autocomplete>
<jd-autocomplete ng-model="entry.category"></jd-autocomplete>
</form>
如果$scope.doChange = function(){}
作为父控制器上的方法存在,我将如何在该函数内访问和设置第二指令的模型?
答案 0 :(得分:1)
给你分叉plnkr
在编辑第一个文本框时,您的第二个文本框中将具有相同的值。现在您可以在doChange处理程序中编写自定义登录。
app.controller('AddFormController', [
'$rootScope',
'$scope',
'$element',
'$http',
function ($rootScope, $scope, $element, $http){
$scope.vendors = [{'vendor_name':'hi', 'category_name': 'food'},{'vendor_name':'dude', 'category_name': 'food'}];
$scope.categories = [{'category_name': 'food'},{'category_name': 'gas'}];
$scope.entry = {};
$scope.wrapper = {};
$scope.wrapper.doChange = function(obj){
console.log(obj);
$scope.entry.category = obj;
};
}
]);