我有一個窗體中有很多字段。這個表單位於Angular Controller之下,請說Parent。這個表單有一個下拉菜單,使用Angular Controller填充,比如Child。點擊此按鈕,將所有的細節都存儲在數據庫中。這些添加的值在同一頁面中的表格下方的表中顯示爲一行。angularjs選擇一個下拉選項上的按鈕點擊
此表的每一行都有編輯按鈕。點擊這個編輯按鈕後,這些值應該填入上面的表格中相應的字段中。除了下拉菜單,我能夠填充所有的值。我有用於在窗體中下拉的ng模型,在點擊編輯按鈕時設置適當的值。當我點擊編輯時,雖然模型對象設置正確,但沒有選擇下拉選項。它仍然顯示第一個默認選項。
如何選擇下拉選項?
PN:在調試控制檯時,我看到下拉值的hashkey不同於從表格行中檢索到的下拉值。
我對形式的html代碼:
<div class="col-sm-8" ng-controller="ConstantsController" ng-init="listDocumentSectionTypeConstants()">
<select class="form-control" id="section-type-list" name="section_type_list" ng-options="sectionType.description for sectionType in sectionTypes"
ng-model="ctrl.comment.documentSectionTypeConstant" ng-change="$parent.setSection()" required>
<option value=""> -- Please Select a Section --</option>
</select>
</div>
的按鈕我的HTML代碼:
<button class="btn btn-primary btn-xs" ng-click="editComment(comment)" data-toggle="tooltip" title="Edit Comment" data-placement="bottom"></button>
我的角度控制器
$scope.editComment = function (comm) {
self.comment.documentSectionTypeConstant = comm.documentSectionTypeConstant;
}
請注意,在添加,更新或刪除操作中沒有問題。
編輯(要包括數據JSON)
上選擇下拉菜單:
Object {
id: "DST_FOREWORD",
active: 0,
defaultSelection: false,
description: "Foreword",
showInUi: true…}
$$hashKey:"object:36"
accountNonExpired:true
accountNonLocked:true
active:0
credentialsNonExpired:true
defaultSelection:false
description:"Foreword"
enabled:true
id:"DST_FOREWORD"
showInUi:true
sortSequence:null
username:null
在點擊編輯按鈕(新增下拉值)
的Object {$$hashKey: "object:57", id: "DST_FOREWORD", description: "Foreword"}
$$hashKey:"object:57"
description:"Foreword"
id:"DST_FOREWORD"
請注意,hashkey在兩種情況下都不相同。不知道這是什麼原因。
編輯2
是什麼comm.documentSectionTypeConstant的類型?它是字符串嗎? – Ruhul
你忘了給控制器添加別名嗎? ng-controller =「ConstantsController」,你的模型是ng-model =「ctrl.comment.documentSectionTypeConstant」 – Aparna
@Ruhul,它是一個具有id,描述等的對象。 – Maz