亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在ng-repeat內部的ng-click函數中添加參數似乎不起作用

在ng-repeat內部的ng-click函數中添加參數似乎不起作用

繁星coding 2019-10-05 13:24:50
我有一個ng-repeat像這樣的簡單循環:<li ng-repeat='task in tasks'>  <p> {{task.name}}  <button ng-click="removeTask({{task.id}})">remove</button></li>控制器中有一個功能$scope.removeTask(taskID)。據我所知,Angular將首先渲染視圖并用{{task.id}}數字替換插值,然后在單擊事件時將評估ng-click字符串。在這種情況下ng-click,完全可以得到預期的結果,即:ng-click="removeTask(5)".但是……它什么也沒做。當然,我可以編寫代碼以task.id從$tasks數組甚至DOM中獲取代碼,但這似乎不像Angular那樣。那么,如何ng-click在ng-repeat循環內向指令添加動態內容呢?
查看完整描述

4 回答

?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

對于在搜索中找到此內容的人來說,這也值得一提...


<div ng-repeat="button in buttons" class="bb-button" ng-click="goTo(button.path)">

  <div class="bb-button-label">{{ button.label }}</div>

  <div class="bb-button-description">{{ button.description }}</div>

</div>

注意的值ng-click。傳遞給的參數goTo()是綁定對象(button)的屬性中的字符串,但沒有用引號引起來。看起來AngularJS為我們處理了這個問題。我掛了幾分鐘。


查看完整回答
反對 回復 2019-10-05
?
長風秋雁

TA貢獻1757條經驗 獲得超7個贊

這可行。謝謝。我正在注入自定義html并在控制器中使用angular對其進行編譯。


        var tableContent= '<div>Search: <input ng-model="searchText"></div>' 

                            +'<div class="table-heading">'

                            +    '<div class="table-col">Customer ID</div>'

                           + ' <div class="table-col" ng-click="vm.openDialog(c.CustomerId)">{{c.CustomerId}}</div>';


            $timeout(function () {

            var linkingFunction = $compile(tableContent);

            var elem = linkingFunction($scope);


            // You can then use the DOM element like normal.

            jQuery(tablePanel).append(elem);


            console.log("timeout");

        },100);


查看完整回答
反對 回復 2019-10-05
  • 4 回答
  • 0 關注
  • 777 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號