情况如下:我有一个 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
数据将被编码。 如何将更新的数据推送到@Model
来自 javascript?