2014-04-11 98 views
0

我正在嘗試爲下拉組創建一個指令。
但是,數據綁定無法正常工作。
問題是:默認變量沒有從html接收值,並且項目值也無法加載。angularjs指令數據綁定不起作用

這裏是指令代碼:

app.directive 'addquestionbutton',()-> 
    restrict: 'E' 
    replace: true 
    scope: 
     default: '@' 
     dropdown: '=' 
     addQuestionClick: '&' 
    template: 
     '<div class="bottom-buttons-container">' + 
     '<div class="add-item">' + 
     '<div class="btn-group dropup">' + 
     '<button type="button" class="btn btn-default btn-md" id="btnSelect" ng-click="addQuestionClick(default)">Add item</button>' + 
     '<button type="button" class="btn btn-info btn-md dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></button>' + 
     '<ul class="dropdown-menu">' + 
     '<li ng-repeat="item in dropdown">' + 
     '<a ng-click="addQuestionClick(item)">{{item}}</a></li></ul></div></div></div>' 

下面是HTML代碼:

<addquestionbutton default='Text' add-question-click="addItem(item)" dropdown="dropdownitems"></addquestionbutton> 
+0

因爲這個例子很簡單,一個plnkr證明將 – JeremyWeir

回答

1

你只需要指定你的函數調用中的參數。請參閱此相關的問題:calling method of parent controller from a directive in AngularJS

<button ng-click="addQuestionClick({item: default})" type="button" class="btn btn-default btn-md" id="btnSelect" > 
... 
<li ng-repeat="item in dropdown"> 
    <a ng-click="addQuestionClick({item: item})">{{item}}</a> 
</li> 

這裏是一個工作演示:http://plnkr.co/edit/pqBp4C4x4riwMn5zHa7i?p=preview

+0

感謝很多幫助的!拯救我的生命 – Justin