2015-02-06 120 views
-1

我剛開始使用angularjs。我正在嘗試構建簡單的單頁應用程序。我有用戶添加項目列表。我使用顯示ng-repeat這樣的名單..如何添加編輯選項列表

<div ng-repeat="option in options"></div><div id="editor"><input type="text" /></div> 

我有一個編輯器div來在列表的底部添加選項。

<div id="item1">item1<a href="#" ng-click="edit_item(item1)">edit</a></div> 
<div id="item2">item2<a href="#" ng-click="edit_item(item2)">edit</a></div> 
... 
<div id="editor"><input type="text" /> ....<div> 

但是,當我編輯我想,我編輯的DIV之後移動editor div。我嘗試使用jquery insertAfter方法。有用。

<div id="item1">item1<a href="#" ng-click="edit_item(item1)">edit</a></div> 
<div id="editor"><input type="text" /> ....<div> 
<div id="item2">item2<a href="#" ng-click="edit_item(item2)">edit</a></div> 
... 

但是,當我添加一個新的項目,它不會移動editor div它的工作如預期。有沒有更好的方法來完成這個使用angularjs指令。我以爲我可以創建一個類指令,並將編輯器移入模板並在點擊時加載它。它會起作用嗎?我感謝任何幫助。

+0

你如何增加新項目列表,推期權新元素?你最好提供更多的代碼來更好的調試。 – Rebornix 2015-02-06 13:13:58

+0

@rebomix是的,我正在將選項推入添加對象。在編輯我設置字段值範圍變量 – 2015-02-06 13:37:29

+0

如何創建一個演示應用程序上plnkr.co或jsfiddle然後我們可以看看它。 – Rebornix 2015-02-06 13:39:11

回答

0

您可以將div <div id="editor"><input type="text" /></div>放入中繼器。

<div id="item1">item1<a href="#" ng-click="edit_item(item1)">edit</a></div> 
<div id="editor1" ng-show='...'><input type="text" /> ....<div> 
<div id="item2">item2<a href="#" ng-click="edit_item(item2)">edit</a></div> 
<div id="editor2" ng-show='...'><input type="text" /> ....<div> 

+0

它會工作。但它不是上面顯示的一個輸入字段。編輯有很多領域。我會認爲會有更好的方法來完成相同的 – 2015-02-06 13:39:33

+0

爲什麼?你可以用指令中的所有字段封裝編輯器,並將指令插入中繼器。 – GraDea 2015-02-06 14:39:19

相關問題