Kendo ui 将数据从剑道网格加载到剑道窗口

Kendo ui 将数据从剑道网格加载到剑道窗口,kendo-ui,Kendo Ui,使用自定义命令打开包含详细数据的剑道窗口。就像这里描述的: 我通过php脚本f.e.employees.php将网格的数据作为json加载 在本例中,通过单击“查看详细信息”,windows将从同一数据源加载数据 我需要的是从另一个php/json文件加载详细数据。我发现它应该和“刷新”方法一起工作,但我没有让它工作 有人能帮我吗 更新 多亏了@Karthikeyan,我的代码现在看起来像这样: <script> ... function showDetails(e

使用自定义命令打开包含详细数据的剑道窗口。就像这里描述的:

我通过php脚本f.e.employees.php将网格的数据作为json加载

在本例中,通过单击“查看详细信息”,windows将从同一数据源加载数据

我需要的是从另一个php/json文件加载详细数据。我发现它应该和“刷新”方法一起工作,但我没有让它工作

有人能帮我吗

更新

多亏了@Karthikeyan,我的代码现在看起来像这样:

        <script>
... function showDetails(e) {
    e.preventDefault();
    var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
    var dataItemID = dataItem.AK_ID;
    $.getJSON('data/akDetail.php?ak=' + dataItemID + '', function (data) {
        wnd.content(detailsTemplate(data));
        wnd.center().open();
    });
}
</script>
<script type="text/x-kendo-template" id="template">
<div id="details-container">
    <h2>#= title_dataitem #</h2>
</div>
</script>

... 功能展示详情(e){
e、 预防默认值();
var dataItem=this.dataItem($(e.currentTarget).closest(“tr”);
var dataItemID=dataItem.AK_ID;
$.getJSON('data/akDetail.php?ak='+dataItemID+'',函数(数据){
wnd.内容(细节模板(数据));
wnd.center().open();
});
}
#=标题\数据项#

剑道窗口没有打开,我在chrome控制台中得到一个错误:“UncaughtReferenceError:title_dataitem未定义”

在演示网格中,行wnd.content(detailsTemplate(dataitem))将模板与当前行的数据绑定。你可以做一些类似的事情

function showDetails(e) {
    e.preventDefault();
    var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
    $.getJSON('/dataSource.php', { param1: dataItem.param1, param2: dataItem.param2 }, function (data) {
        wnd.content(renderTemplate(data));
        wnd.center().open();
    });
}
renderTemplate方法可以使用从服务器接收的数据生成HTML标记,并将作为内容转储到窗口中

Update:renderTemplate方法可以是一个剑道模板,它需要来自akDetail.php调用的数据,也可以是一个自定义实现,它返回HTML标记,可以用作模式窗口的内容。比如说,

function renderTemplate(dataItem) {
    var markup = $('<div id="details-container"> ' +
                        '<h2 class="firstName"></h2> ' +
                        '<em class="title"></em> ' +
                        '<dl> ' +
                            '<dt class="city"></dt> ' +
                            '<dt class="dob"></dt> ' +
                        '</dl> ' +
                    '</div>');
    markup.find('h2.firstName').html(dataItem.firstName);
    markup.find('em.title').html(dataItem.title);
    markup.find('dt.city').html(dataItem.city);
    markup.find('dt.dob').html(kendo.toString(dataItem.dob, "MM/dd/yyyy"));
}
函数renderTemplate(数据项){
变量标记=$('')+
' ' +
' ' +
' ' +
' ' +
' ' +
' ' +
'');
markup.find('h2.firstName').html(dataItem.firstName);
markup.find('em.title').html(dataItem.title);
markup.find('dt.city').html(dataItem.city);
html(kendo.toString(dataItem.dob,“MM/dd/yyyy”);
}

谢谢,renderTemplate方法是什么?在剑道ui文档中找不到它,或者它与“detailsTemplate=kendo.template($(“#template”).html();”相同