Kendo ui . 谢谢1) 这两个请求是:第一个页面加载包含网格,第二个编辑页面在iframe窗口(剑道窗口)中打开“/Clients/edit”,因此你正在点击服务器twiceTarek Najem Yes!我现在明白了。第一个是首字母有点必要,但是第二个是可以避免

Kendo ui . 谢谢1) 这两个请求是:第一个页面加载包含网格,第二个编辑页面在iframe窗口(剑道窗口)中打开“/Clients/edit”,因此你正在点击服务器twiceTarek Najem Yes!我现在明白了。第一个是首字母有点必要,但是第二个是可以避免,kendo-ui,window,command,kendo-grid,Kendo Ui,Window,Command,Kendo Grid,. 谢谢1) 这两个请求是:第一个页面加载包含网格,第二个编辑页面在iframe窗口(剑道窗口)中打开“/Clients/edit”,因此你正在点击服务器twiceTarek Najem Yes!我现在明白了。第一个是首字母有点必要,但是第二个是可以避免的,正如我相信你在上面指出的。第二个是我试图在弹出窗口中将模型数据放入部分视图。顺便说一句:更多的发现让我意识到可以有相当多的javascript来管理客户端控制事件和状态。为了找到管理客户端工作的方法,我偶然发现了Knockout.js。通过


. 谢谢1) 这两个请求是:第一个页面加载包含网格,第二个编辑页面在iframe窗口(剑道窗口)中打开“/Clients/edit”,因此你正在点击服务器twiceTarek Najem Yes!我现在明白了。第一个是首字母有点必要,但是第二个是可以避免的,正如我相信你在上面指出的。第二个是我试图在弹出窗口中将模型数据放入部分视图。顺便说一句:更多的发现让我意识到可以有相当多的javascript来管理客户端控制事件和状态。为了找到管理客户端工作的方法,我偶然发现了Knockout.js。通过使用该映射,我认为现在管理客户端工作会更容易。起初,我忽略了您提到的“数据绑定”和MVVM,但现在又回到了这个问题上。奇怪的我没有使用击倒,但看起来是个好主意…@[Tarek Najem]问题?关于“窗口”,我使用的是剑道窗口(请参阅“应答”代码),我无法找到在该窗口中调用Partial而不调用Refresh的方法。如果你有办法,请告诉我。谢谢。仅供参考,虽然我们鼓励为您的问题添加答案,但将您的答案编辑到您的问题中是不合适的。只是好奇,因为这个答案是如此详尽。您有:.Editable(Editable=>Editable.Mode(GridEditMode.PopUp).TemplateName(“Edit”)),但我看不到任何显示名为“Edit”的模板的地方。我看到一个名为“_edit.cshtml”的局部视图,剑道会忽略下划线和大写吗?@RyanHoyle,我也这么认为。它看起来几乎像是代码中的一个死胡同,或者可能是从演示中复制的代码作为起点。有了自定义命令,将永远不会调用该弹出窗口。此外(除非发现约定的内容超出我的理解),它将从名为
Edit.cshtml
Views\Shared\EditorTemplates
中的部分视图中提取,OP没有提到。我确信这在没有模板引用的情况下是可行的,但我也不知道它是否能在整个fluent
.Editable(…)
配置被删除的情况下工作。考克斯先生?
var detailDataItem = this.dataItem($(e.target).closest("tr"));
function edit(e) {
    //get the row which belongs to clicked edit button
    var item = this.dataItem($(e.currentTarget).closest("tr"));

    //bind the window to the item via mvvm http://docs.telerik.com/kendo-ui/framework/mvvm/overview 
    kendo.bind($("#window"), item);
}
@(Html.Kendo().Window().Name("window")
    .Title("Client Details")
    .Visible(false)
    .Modal(true)
    .Draggable(true)
    .Width(400)
    .Content(@<text>
        @Html.Partial("EditorTemplates/Client", new Product())
    </text>))

//Put in every element in the window data-bind="value:INPUT NAME" 
//<input name="price" /> become <input name="price" data-bind="value: price" />
$("#window [name]").each(function () {
     var name = $(this).attr("name")
     $(this).attr("data-bind", "value:" + name );
 });
@model Product
@Html.TextBoxFor(m => m.Name)