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 應用– 創建CRUD 應用

數據收集並妥善管理數據是網絡應用共同的必要。 CRUD 允許我們生成頁面列表,並編輯數據庫記錄。 本教程將向你演示如何使用jQuery EasyUI 框架實現一個CRUD DataGrid。

我們將使用下面的插件:

  • datagrid:向用戶展示列表數據。
  • dialog:創建或編輯一條單一的用戶信息。
  • form:用於提交表單數據。
  • messager:顯示一些操作信息。

步驟1:準備數據庫

我們將使用MySql 數據庫來存儲用戶信息。 創建數據庫和'users' 表。

步驟2:創建DataGrid 來顯示用戶信息

創建沒有javascript 代碼的DataGrid。

<table id="dg" title="My Users" class="easyui-datagrid" style="width:550px;height:250px"
		url="get_users.php"
		toolbar="#toolbar"
		rownumbers="true" fitColumns="true" singleSelect="true">
	<thead>
		<tr>
			<th field="firstname" width="50">First Name</th>
			<th field="lastname" width="50">Last Name</th>
			<th field="phone" width="50">Phone</th>
			<th field="email" width="50">Email</th>
		</tr>
	</thead>
</table>
<div id="toolbar">
	<a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newUser()">New User</a>
	<a href="#" class="easyui-linkbutton" iconCls="icon-edit" plain="true" onclick="editUser()">Edit User</a>
	<a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyUser()">Remove User</a>
</div>

我們不需要寫任何的javascript 代碼,就能向用戶顯示列表,如下圖所示:

DataGrid 使用'url' 屬性,並賦值為'get_users.php',用來從服務器檢索數據。

get_users.php 文件的代碼

$rs = mysql_query('select * from users');
$result = array();
while($row = mysql_fetch_object($rs)){
	array_push($result, $row);
}

echo json_encode($result);

步驟3:創建表單對話框

我們使用相同的對話框來創建或編輯用戶。

<div id="dlg" class="easyui-dialog" style="width:400px;height:280px;padding:10px 20px"
		closed="true" buttons="#dlg-buttons">
	<div class="ftitle">User Information</div>
	<form id="fm" method="post">
		<div class="fitem">
			<label>First Name:</label>
			<input name="firstname" class="easyui-validatebox" required="true">
		</div>
		<div class="fitem">
			<label>Last Name:</label>
			<input name="lastname" class="easyui-validatebox" required="true">
		</div>
		<div class="fitem">
			<label>Phone:</label>
			<input name="phone">
		</div>
		<div class="fitem">
			<label>Email:</label>
			<input name="email" class="easyui-validatebox" validType="email">
		</div>
	</form>
</div>
<div id="dlg-buttons">
	<a href="#" class="easyui-linkbutton" iconCls="icon-ok" onclick="saveUser()">Save</a>
	<a href="#" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg').dialog('close')">Cancel</a>
</div>

這個對話框已經創建,也沒有任何的javascript 代碼:。

步驟4:實現創建和編輯用戶

當創建用戶時,打開一個對話框並清空表單數據。

function newUser(){
	$('#dlg').dialog('open').dialog('setTitle','New User');
	$('#fm').form('clear');
	url = 'save_user.php';
}

當編輯用戶時,打開一個對話框並從datagrid 選擇的行中加載表單數據。

var row = $('#dg').datagrid('getSelected');
if (row){
	$('#dlg').dialog('open').dialog('setTitle','Edit User');
	$('#fm').form('load',row);
	url = 'update_user.php?id='+row.id;
}

'url' 存儲著當保存用戶數據時表單回傳的URL 地址。

步驟5:保存用戶數據

我們使用下面的代碼保存用戶數據:

function saveUser(){
	$('#fm').form('submit',{
		url: url,
		onSubmit: function(){
			return $(this).form('validate');
		},
		success: function(result){
			var result = eval('('+result+')');
			if (result.errorMsg){
				$.messager.show({
					title: 'Error',
					msg: result.errorMsg
				});
			} else {
				$('#dlg').dialog('close'); // close the dialog
				$('#dg').datagrid('reload'); // reload the user data
			}
		}
	});
}

提交表單之前,'onSubmit' 函數將被調用,該函數用來驗證表單字段值。 當表單字段值提交成功,關閉對話框並重新加載datagrid 數據。

步驟6:刪除一個用戶

我們使用下面的代碼來移除一個用戶:

function destroyUser(){
	var row = $('#dg').datagrid('getSelected');
	if (row){
		$.messager.confirm('Confirm','Are you sure you want to destroy this user?',function(r){
			if (r){
				$.post('destroy_user.php',{id:row.id},function(result){
					if (result.success){
						$('#dg').datagrid('reload'); // reload the user data
					} else {
						$.messager.show({ // show error message
							title: 'Error',
							msg: result.errorMsg
						});
					}
				},'json');
			}
		});
	}
}

移除一行之前,我們將顯示一個確認對話框讓用戶決定是否真的移除該行數據。 當移除數據成功之後,調用'reload' 方法來刷新datagrid 數據。

步驟7:運行代碼

開啟MySQL,在瀏覽器運行代碼。

下載jQuery EasyUI 實例

jeasyui-app-crud1.zip