2017-03-21 151 views
0

使用自定義命令打開具有詳細數據的劍道窗口。喜歡這裏描述:將數據從劍道網格加載到劍道窗口中

http://demos.telerik.com/kendo-ui/grid/custom-command

我通過PHP腳本F.E.加載網格作爲JSON數據employees.php。

在該示例中,通過單擊「查看詳細信息」窗口將加載來自同一數據源的數據。

我需要的是從另一個php/json文件加載詳細數據。我發現它應該使用「刷新」方法,但我沒有得到它的工作。

有人可以幫我嗎?

UPDATE

感謝@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> 

劍道窗口不開,我得到的鉻控制檯的錯誤:「未捕獲的ReferenceError:title_dataitem未定義「

回答

0

在演示網格中,行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標記,並會被人拋棄的窗口中的內容。

更新: renderTemplate方法既可以是需要akDetail.php調用的數據的kendo模板,也可以是返回可用作模式窗口內容的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")); 
} 
+0

謝謝,什麼是renderTemplate方法?在kendo ui文檔中找不到它,或者它是相同的: 'detailsTemplate = kendo.template($(「#template」)。html());' – tbr

+0

請參閱我的問題中的更新 – tbr