【发布时间】:2013-09-27 13:44:47
【问题描述】:
情况如下:我有一个 Razor 生成的项目列表(需要保持 Razor 生成):
@model MG.ViewModels.Profile.ProfileDetailsViewModel
foreach (var interest in Model.Interests)
{
<span class="subject-title">@interest.SubjectName</span>
<a data-bind='click: function(){viewDescription(@Html.Raw(Json.Encode(interest)))}'class="subject-description-button" href="#" title="View Details">details</a>
}
用户可以通过单击“详细信息”链接来更新每个项目的详细信息,该链接为viewDescription javascript 函数编码模型:
self.viewDescription = function (data) {
// pull data into KO observables
self.selectedInterestDescription(data.Description);
self.selectedInterestSubject(data.SubjectName);
self.selectedInterestId(data.InterestId);
self.triggerModal(true);
};
在触发的模式中,用户可以向更新描述的端点发送 AJAX 请求。正如我所期望的那样工作。
我正在努力解决的是 - 当用户完成更新时,剃须刀 Model 仍然有旧数据。因此,当用户在更新后单击 Razor 生成的列表中的“详细信息”时,旧的 @model 数据将被编码。 如何将更新后的数据从 javascript 推送到 @Model?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 knockout.js