我在使用angularJs的选择框中遇到ng模型问题。 控制器功能中的模型值未更新。但是,当选择框放置在主模板中时,它确实反映了控制器中的更改,而不是放置在指令模板中时的更改。在main.html中选择框的ng模型不反映控制器功能的变化
<select ng-model="selectedGuest" id="guests-sel"
ng-change="doSearchByFilterDropdown($event, selectedGuest.key, 'guests')"
ng-options="guest as guest.value for guest in guests track by guest.key">
</select>
工作正常,这是main.html
<div ng-init="init()">
<div class="content-wrapper">
<div ng-if="selTemplate == 'tourism'">
<!-- Does not work reflect changes when changedin this directive template -->
<search-results-tourism></search-results-tourism>
</div>
<!-- Select Box ng-model value reflects in controller when placed here,
but not in directive template -->
<select ng-model="selectedGuest" id="guests-sel" ng-change="doSearchByFilterDropdown($event, selectedGuest.key, 'guests')"
ng-options="guest as guest.value for guest in guests track by guest.key">
</select>
</div>
</div>
不中指令模板工作。之前我使用ng-include作为模板,但我认为这是因为ng-include创建的新范围,因此我用指令替换了它,但仍然无法工作任何Idea。 ?
这是指令
<search-results-tourism></search-results-tourism>
...
.directive('searchResultsTourism', function() {
return {
restrict: 'E',
scope: false,
templateUrl : 'views/search-results-tourism.html'
};
调用指令中的模板相同的选择框不会让NG-模型值更新在控制器
什么是指令模板,以及如何设置/操作链接函数中的选择数据,您如何在页面中包含指令? – ste2425
编辑细节 – Adeel
我认为这是一个范围问题..你不能在父指令/控制器 – MayK