簡體   English   中英

使用extjs4更改網格

[英]changing grid using extjs4

我正在使用php mysql后端處理extjs 4.2應用程序。 我有一個json回復與學生姓名,考試,科目,標記在一行。 同樣是由mysql數據庫發送的。 我正在嘗試重新配置網格,如下所示:

在此輸入圖像描述

因此,基本上Sem-1和英語的標記是一個記錄的一部分。 但是,Sem-2和英語的標記是第二記錄的一部分。 到目前為止,我可以展示科目和學期。 學期也可以在網格列重新配置中顯示。 但我的理解是一條完整的記錄可以連續顯示。 也許通過grid tpl完成。 你能幫我么。 如果需要更改json,我們也可以這樣做

目前我的json是{“data”:[{“MarkID”:20,“studentID”:2,“ExamName”:“Semester-1”,“Subject”:“Science”,“MaxMarks”:100,“ MarksRecvd“:15},{”MarkID“:21,”studentID“:2,”ExamName“:”Semester-2“,”Subject“:”Social Science“,”MaxMarks“:100,”MarksRecvd“:25 }]}

因此,每個科目 - 學期組合都是一個記錄,我可以輕松地顯示網格中的每個記錄。

但是我希望在一個主題中結合各個學期的標記...所以在某種程度上@TheShalit是正確的,json可以改變,所有標記都顯示在一行

您可以使用dataview使用自定義布局模板和格式顯示數據。

View使用Ext.XTemplate作為其內部模板機制,並綁定到Ext.data.Store,以便隨着商店中的數據更改,視圖會自動更新以反映更改。

你的tpl可能是這樣的:

var tableTpl = new Ext.XTemplate(
        '<tpl>'+
        '<table class="tableViewDemo" width="100%" height="100%" padding="" border="1">' + 
        '<tr>' + 
        '<td width="50%" height="5%" style="padding-left:2%;">Subject</td>' + 
        '<td width="50%" height="5%" style="padding-left:2%;">Semester-1 Marks</td>' + 
        '</tr>' + 
        '</tpl>' +
        '<tpl for=".">'+
        '<table class="tableViewDemo" width="100%" height="100%" padding="" border="1">' + 
        '<tr>' + 
        '<td width="50%" height="5%" style="padding-left:2%;">{subject}</td>' + 
        '<td width="50%" height="5%" style="padding-left:2%;">{sem1}</td>' + 
        '</tr>' + 
        '</tpl>'            
    );

以下是根據您的要求進行的簡單演示: DataView ExJs4.2 Demo

您可以相應地修改tpl。有關更多詳細信息: Ext.XTemplate

你能展示你想要實現的目標嗎?

我認為最好的方法是更改json記錄並將數據添加為[subject,s1,s2,s3,s4]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM