0
我看不到如何將下拉列表綁定到模型中的值。無法將<select>綁定到模型值
假設我的強類型型號是FA.Domain.Entities.Account
。
Account
有一個PersonId
字段,我想綁定到選擇下拉列表。當顯示視圖時,我想讓它反映@Model.PersonId
的值。
我的代碼如下:
選擇標籤:
<select id="People"
data-bind="options: allPeople,
value: selectedPerson,
optionsValue: 'PersonId',
optionsText: 'NamePP'">
</select>
的Javascript:
var pps = @Html.Raw(new JavaScriptSerializer().Serialize(ViewBag.PossiblePeople));
function person(PersonId, NamePP) {
this.CostCentreId = ko.observable(PersonId);
this.NamePP = ko.observable(NamePP);
}
function PersonViewModel() {
this.selectedPerson = ko.observable('@Model.PersonId');
var mapAllPeople = $.map(pps, function(item) {
return new person(item.PersonId, item.Name)});
this.allPeople = ko.observableArray(mapAllPeople);
}
jQuery(document).ready(function() {
var viewModel = new PersonViewModel();
alert(viewModel.selectedPerson()); // correct value
ko.applyBindings(viewModel);
alert(viewModel.selectedPerson()); // undefined
});
我在做什麼錯?
我已經提出了兩個警報,以顯示selectedPerson
的值。一個在綁定發生之前進行並顯示正確的值,另一個在後面並顯示「未定義」。
非常感謝。森林和樹木。 – awrigley