2013-03-08 41 views
1

我有一個控制器,它接收json項目列表並在我的視圖中重複它們。我正在使用bootstrap彈出窗口的變體,並希望在定義了我的$ scope.popover的子模板中插入訂單ID,併爲變量進行解析。我讀了方括號是要走的路,但它似乎不適合我。AngularJS - 將插入的html片段傳遞給指令屬性

function ManageOrderCtrl($scope, $http) { 
    $scope.subtemplate = '<input class="hidden" value="[order._id]">'; 

    $http.get('/api/orders'). 
    success(function(data, status, headers, config) { 
     $scope.orders = data.orders; 
    }); 

    }; 
} 

模板(實際上是一個指令 - 引導酥料餅的變化):

<li ng-repeat="order in orders"> 
    <a href="#" popover="{{ subtemplate }}">{{ order._id }}</a> 
<li> 
+0

什麼是你的錯誤 – smk 2013-03-08 05:05:18

+0

這裏的子模板被視爲正常的字符串值,並且範圍解析不會發生。爲什麼你要在html屬性'popover'中嵌入html? – Chandermani 2013-03-08 05:08:43

+0

沒有錯誤,但變量order_id沒有插入。我想這樣做的原因是我需要將一些相當複雜的html傳遞給popover屬性 - 不知道有什麼更好的方法。希望有一個簡單的方法,而不是爲它寫一個指令 - 特別是考慮到popover已經是2個指令 – cyberwombat 2013-03-08 05:18:10

回答

0

你可以嘗試像

<li ng-repeat="order in orders"> 
    <a href="#" popover="<input class="hidden" value='{{order._id}}'">{{ order._id }}</a> 
<li> 

而是在控制器定義模板。您也可以使用ngInclude創建模板並將它們包含在html中。

+1

是的,這就是我現在擁有的 - 但它非常混亂 - 有相當數量的html。和ngInclude似乎並沒有在我的情況下得到解析 - 只是打印出來:ng-include'templatename.html' – cyberwombat 2013-03-08 16:51:08

+0

我認爲它不會被解析,因爲它實際進入的代碼(例如它是A標籤)是本身是一個指令 – cyberwombat 2013-03-08 16:51:52

相關問題