我有一个剑道窗口,它的数据加载了 ajax 调用。这个剑道窗口就像一个小部件编辑器,允许用户更改或操作数据以呈现不同的图表等。一旦用户配置了所有选项,他们想要在显示在页面上之前预览他们的图表/图形。我已经成功构建了模型窗口并使用一个输入(预览)按钮加载了初始数据,但现在我不知道如何在预览按钮单击时加载模型窗口内的局部视图。我不知道这种方法是否正确,但我绝对需要一个局部视图,因为我必须构建模型,该模型将传递给这个局部视图以呈现图表/图形。
$('.btnedit').click(function () {
var pwrid = $(this)[0].id;
$.ajax({
url: '/Home/EditWidget/' + '?id=' + pwrid,
type: 'GET',
accepts: 'text/html',
context: self,
success: self.editWidgetWindowCallBack,
error: function () { alert('Oops! Something went wrong'); },
complete: function(){ }
});
});
editWidgetWindowCallBack: function (html, textStatus, jqXHR) {
var model = $('#EditWidgetModelWindow').data('kendoWindow');
model.content(html);
model.center();
model.open();
}
EditWidgetModelWindow 是我的剑道模型窗口
以下是我的操作方法
public ActionResult EditWidget(string id)
{
var widgetViewModel = // view model construction here.
return PartialView("Widgets/_EditWidget", widgetViewModel);
}
这就是我的剑道模型窗口在其中加载编辑器局部视图的方式,现在我想通过单击按钮在该局部视图中加载另一个局部视图。例如,如果我的局部视图名称是 _Chart 并且模型名称是 ChartModel,我如何通过单击按钮(按需)从父局部视图调用此局部视图,并在 Kendo 模型窗口中将其呈现在现有局部视图中。