剑道网格 - 如何使用 JavaScript 打开弹出编辑窗口

Posted

技术标签:

【中文标题】剑道网格 - 如何使用 JavaScript 打开弹出编辑窗口【英文标题】:Kendo grid - How to open popup edit window with JavaScript 【发布时间】:2015-11-28 20:36:53 【问题描述】:

我的剑道网格中有自定义按钮定义为

 columns.Template(t => t.id).ClientTemplate(
                       "<button style='margin:2px' type='button' class='btn btn-success btn-xs' data-toggle='tooltip' data-placement='left' title='Izmeni' onclick=\"OpenPopUp()\"><span class='glyphicon glyphicon-edit'></span></button>&nbsp;" +
                       "<button style='margin:2px' type='button' style='margin-left:2px' class='btn btn-danger btn-xs' data-toggle='tooltip' data-placement='left' title='Obrisi' onclick=\"modal_xxx_edit(#: id#, 'delete')\"><span class='glyphicon glyphicon-remove-sign'></span></button></div>").Title("Operacije").HeaderhtmlAttributes(new  style = "text-align:center;  font-weight: bold" ).HtmlAttributes(new  style = "text-align:center;" ).Width(100);

网格编辑模式定义为 PopUp。如何使用 javascript 打开网格中特定行的弹出窗口?

【问题讨论】:

这个怎么样? demos.telerik.com/aspnet-mvc/grid/custom-command 您想要默认的剑道弹出窗口来编辑网格还是想要拥有自己的弹出窗口? 我有默认的剑道弹出... 【参考方案1】:

您可以使用 Grid 的方法editRow。试试下面的代码:

按钮模板

<button style='margin:2px' type='button' class='btn btn-success btn-xs' 
    data-toggle='tooltip' data-placement='left' title='Izmeni' 
    onclick=\"OpenPopUp(this);\">
<span class='glyphicon glyphicon-edit'></span></button>&nbsp;

注意 onclick 值的变化,您必须使用 this 关键字将当前元素对象作为参数传递给您的函数。

javascript

function OpenPopUp(e) 
    var grid = $("#grid").getKendoGrid(),
        selectedRow = $(e).closest("tr");

    grid.editRow(selectedRow);

editRow需要网格行元素作为参数来知道用户打算编辑哪条记录。

Dojo 中的示例

【讨论】:

以上是关于剑道网格 - 如何使用 JavaScript 打开弹出编辑窗口的主要内容,如果未能解决你的问题,请参考以下文章

剑道网格如何从javascript传递附加参数

如何使用 javascript 引用剑道网格中的特定单元格?

如何使用剃刀语法在剑道网格列模板中调用 javascript 函数

单击按钮时剑道网格不会打开剑道窗口

在 Javascript 中填充剑道 ui 网格

剑道网格弹出显示