Latest web development tutorials
×

jQuery EasyUI 教程

jQuery EasyUI 教程 jQuery EasyUI 簡介

jEasyUI 應用

jEasyUI 創建 CRUD 應用 jEasyUI 創建 CRUD 數據網格 jEasyUI 表單的 CRUD 應用 jEasyUI 創建 RSS 閱讀器

jEasyUI 拖放

jEasyUI 基本的拖動和放置 jEasyUI 創建拖放的購物車 jEasyUI 創建學校課程表

jEasyUI 菜單與按鈕

jEasyUI 創建簡單的菜單 jEasyUI 創建鏈接按鈕 jEasyUI 創建菜單按鈕 jEasyUI 創建分割按鈕

jEasyUI 佈局

jEasyUI 創建邊框佈局 jEasyUI 創建複雜佈局 jEasyUI 創建折疊面板 jEasyUI 創建標籤頁 jEasyUI 動態添加標籤頁 jEasyUI 添加自動播放標籤頁 jEasyUI 創建 XP 風格左側面板

jEasyUI 數據網格

jEasyUI 轉換 HTML 表格為數據網格 jEasyUI 取得選中行數據 jEasyUI 添加查詢功能 jEasyUI 添加工具欄 jEasyUI 創建複雜工具欄 jEasyUI 設置凍結列 jEasyUI 動態改變列 jEasyUI 格式化列 jEasyUI 設置排序 jEasyUI 自定義排序 jEasyUI 創建列組合 jEasyUI 添加複選框 jEasyUI 自定義分頁 jEasyUI 啟用行內編輯 jEasyUI 擴展編輯器 jEasyUI 列運算 jEasyUI 合併單元格 jEasyUI 創建自定義視圖 jEasyUI 創建頁腳摘要 jEasyUI 條件設置行背景顏色 jEasyUI 創建屬性網格 jEasyUI 擴展行顯示細節 jEasyUI 創建子網格 jEasyUI 顯示海量數據 jEasyUI 添加分頁組件

jEasyUI 窗口

jEasyUI 創建簡單窗口 jEasyUI 自定義窗口工具欄 jEasyUI 窗口與佈局 jEasyUI 創建對話框 jEasyUI 自定義對話框

jEasyUI 樹形菜單

jEasyUI 使用標記創建樹形菜單 jEasyUI 創建異步樹形菜單 jEasyUI 樹形菜單添加節點 jEasyUI 創建帶複選框的樹形菜單 jEasyUI 樹形菜單拖放控制 jEasyUI 樹形菜單加載父/子節點 jEasyUI 創建基礎樹形網格 jEasyUI 創建複雜樹形網格 jEasyUI 樹形網格動態加載 jEasyUI 樹形網格添加分頁 jEasyUI 樹形網格惰性加載節點

jEasyUI 表單

jEasyUI 創建異步提交表單 jEasyUI 表單驗證 jEasyUI 創建樹形下拉框 jEasyUI 格式化下拉框 jEasyUI 過濾下拉數據網格

jEasyUI 參考手冊

jQuery EasyUI 插件 jQuery EasyUI 擴展

jQuery EasyUI 數據網格– 擴展行顯示細節

數據網格(datagrid)可以改變它的視圖(view)來顯示不同的效果。 使用詳細視圖,數據網格(datagrid)可以在數據行的左邊顯示展開按鈕("+" 或者"-")。 用戶可以展開行來顯示附加的詳細信息。

步驟1:創建數據網格(DataGrid)

	<table id="dg" style="width:500px;height:250px"
			url="datagrid8_getdata.php"
			pagination="true" sortName="itemid" sortOrder="desc"
			title="DataGrid - Expand Row"
			singleSelect="true" fitColumns="true">
		<thead>
			<tr>
				<th field="itemid" width="60">Item ID</th>
				<th field="productid" width="80">Product ID</th>
				<th field="listprice" align="right" width="70">List Price</th>
				<th field="unitcost" align="right" width="70">Unit Cost</th>
				<th field="status" width="50" align="center">Status</th>
			</tr>
		</thead>
	</table>

步驟2:為數據網格(DataGrid)設置詳細視圖

為了使用詳細視圖,請記得在頁面頭部引用視圖腳本文件。

<script type="text/javascript" src="http://www.w3cschool.cc/try/jeasyui/datagrid-detailview.js"></script>
$('#dg').datagrid({
	view: detailview,
	detailFormatter:function(index,row){
		return '<div class="ddv" style="padding:5px 0"></div>';
	},
	onExpandRow: function(index,row){
		var ddv = $(this).datagrid('getRowDetail',index).find('div.ddv');
		ddv.panel({
			border:false,
			cache:false,
			href:'datagrid21_getdetail.php?itemid='+row.itemid,
			onLoad:function(){
				$('#dg').datagrid('fixDetailRowHeight',index);
			}
		});
		$('#dg').datagrid('fixDetailRowHeight',index);
	}
});

我們定義'detailFormatter' 函數,告訴數據網格(datagrid)如何渲染詳細視圖。 在這種情況下,我們返回一個簡單的'<div>' 元素,它將充當詳細內容的容器。 請注意,詳細信息為空。 當用戶點擊展開按鈕('+')時,onExpandRow 事件將被觸發。 所以我們可以寫一些代碼來加載ajax 詳細內容。 最後我們調用'fixDetailRowHeight' 方法來固定當詳細內容加載時的行高度。

步驟3:服務器端代碼

datagrid21_getdetail.php
&lt;?php
	include_once 'conn.php';

	$itemid = mysql_real_escape_string($_REQUEST['itemid']);

	$rs = mysql_query("select * from item where itemid='$itemid'");
	$item = mysql_fetch_array($rs);
?&gt;

<table class="dv-table" border="0" style="width:100%;">
	<tr>
		<td rowspan="3" style="width:60px">
			&lt;?php
				$aa = explode('-',$itemid);
				$serno = $aa[1];
				$img = "images/shirt$serno.gif";
				echo "<img src=\"$img\" style=\"width:60px;margin-right:20px\" />";
			?&gt;
		</td>
		<td class="dv-label">Item ID: </td>
		<td>&lt;?php echo $item['itemid'];?&gt;</td>
		<td class="dv-label">Product ID:</td>
		<td>&lt;?php echo $item['productid'];?&gt;</td>
	</tr>
	<tr>
		<td class="dv-label">List Price: </td>
		<td>&lt;?php echo $item['listprice'];?&gt;</td>
		<td class="dv-label">Unit Cost:</td>
		<td>&lt;?php echo $item['unitcost'];?&gt;</td>
	</tr>
	<tr>
		<td class="dv-label">Attribute: </td>
		<td colspan="3">&lt;?php echo $item['attr1'];?&gt;</td>
	</tr>
</table>

下載jQuery EasyUI 實例

jeasyui-datagrid-datagrid21.zip