我使用KoGrid来制作我的自定义Ajax网格。我不知道如何将模型元素传递给某些Javascrit方法来生成自定义模板。
我尝试过这样做并且不起作用:
PluginGrid.AjaxUrl("MyControler/GetGrid").Columns(
[
{ field: "UserName", displayName: "Model", width: "*", cellClass: "text-center", headerClass: "grid_width_270", cellTemplate: PluginHelpers.HtmlUserInformation($parent.entity, true) },
{ field: "StatusId", displayName: "Status", width: "*", cellClass: "text-center", headerClass: "text-center" }
]).Show("grid");
});
这实际上是KoGrid的包装器。我想以某种方式将数据模型传递给我的Js方法:
PluginHelpers.HtmlUserInformation($parent.entity, true) }
当我这样做时,我收到了一些$ parent变量的未定义错误。
请建议,
答案 0 :(得分:0)
最后我找到了解决方案:
<template id="XXX">
<div data-bind="html: PluginHelpers.HtmlUserInformation($parent.entity, true)">
</div>
</template>
然后
PluginGrid.AjaxUrl("Controller/GetGrid").Columns(
[
{ field: "UserName", displayName: "Model", width: "*", cellClass: "text-center", headerClass: "grid_width_270", cellTemplate: $("#XXX").html() },
{ field: "StatusId", displayName: "Status", width: "*", cellClass: "text-center", headerClass: "text-center" }
]).Show("grid");
这是我能找到的最佳解决方案......