使用jQuery EasyUI構建CRUD應用程序
Kendo UI for jQuery——創建現代Web應用程序的最完整UI庫!查看詳情>>>
CRUD應用程序已經成為一個常見的收集數據并且正確管理數據的Web應用程序。CRUD允許我們生成頁面列表并且可以編輯數據庫記錄。本文主要為大家展示如何利用jQuery EasyUI框架來實現CRUD應用程序。
我們將使用以下的插件:
- 數據網格(datagrid):顯示用戶列表數據
- 對話框(dialog):創建或編輯一個用戶的信息
- form:用于提交表單數據
- messager:顯示一些操作信息
步驟1:準備數據庫
我們將使用MySQL數據庫來存儲用戶信息,創建數據庫和"用戶"表。

步驟2:創建DataGrid顯示用戶信息
創建沒有JavaScript代碼的DataGrid。
First Name | Last Name | Phone |
---|
我們不需要編寫任何JavaScript代碼,就可以顯示用戶列表如下圖:

DataGrid從服務器檢索數據中使用'url'屬性分配給"get_users.php"。
get_users.php文件的代碼:
1 $rs = mysql_query('select * from users'); 2 $result = array(); 3 while($row = mysql_fetch_object($rs)){ 4 array_push($result, $row); 5 } 6 7 echo json_encode($result);
第3步:創建表格對話框
創建或編輯一個用戶,我們使用相同的對話框。
1323User Information456First Name:78910Last Name:11121314Phone:15161718Email:19202122
也沒有用javascript代碼創建的對話框。

步驟4:執行創建和編輯的用戶
當創建一個用戶,我們打開對話框,清除表單數據。
1 function newUser(){ 2 $('#dlg').dialog('open').dialog('setTitle','New User'); 3 $('#fm').form('clear'); 4 url = 'save_user.php'; 5 }
編輯用戶的時候,我們打開對話框,從選定的datagrid加載表單數據行。
1 var row = $('#dg').datagrid('getSelected'); 2 if (row){ 3 $('#dlg').dialog('open').dialog('setTitle','Edit User'); 4 $('#fm').form('load',row); 5 url = 'update_user.php?id='+row.id; 6 }
在"URL"存儲的URL地址,其中的form 將發布的時候保存用戶數據。
步驟5:保存用戶數據
保存用戶數據,我們使用下面的代碼:
1 function saveUser(){ 2 $('#fm').form('submit',{ 3 url: url, 4 onSubmit: function(){ 5 return $(this).form('validate'); 6 }, 7 success: function(result){ 8 var result = ; 9 if (result.errorMsg){ 10 $.messager.show({ 11 title: 'Error', 12 msg: result.errorMsg 13 }); 14 } else { 15 $('#dlg').dialog('close'); // close the dialog 16 $('#dg').datagrid('reload'); // reload the user data 17 } 18 } 19 }); 20 }
在提交表單時,"onsubmit"的函數將被調用,在其中我們可以驗證表單字段的值。當窗體字段值成功時,關閉對話框并重新加載數據網格的數據。
步驟6:刪除用戶
要刪除一個用戶,我們使用下面的代碼:
1 function destroyUser(){ 2 var row = $('#dg').datagrid('getSelected'); 3 if (row){ 4 $.messager.confirm('Confirm','Are you sure you want to destroy this user?',function(r){ 5 if (r){ 6 $.post('destroy_user.php',{id:row.id},function(result){ 7 if (result.success){ 8 $('#dg').datagrid('reload'); // reload the user data 9 } else { 10 $.messager.show({ // show error message 11 title: 'Error', 12 msg: result.errorMsg 13 }); 14 } 15 },'json'); 16 } 17 }); 18 } 19 }

在刪除行,我們會顯示一個確認對話框,讓用戶來決定是否要真的刪除該行數據。當成功地刪除數據,會使用稱之為"重裝"的方法來刷新數據網格的數據。
步驟7:運行代碼
使用MySQL在瀏覽器中開始運行該代碼。