jqGrid-基礎篇

jqGrid 是一個用來顯示網格數據的jQuery插件,經過使用jqGrid能夠輕鬆實現前端頁面與後臺數據的ajax異步通訊。 
jqGrid demojavascript

1、jqGrid特性

  • 基於jquery UI主題,開發者能夠根據客戶要求更換不一樣的主題。
  • 兼容目前全部流行的web瀏覽器。
  • Ajax分頁,能夠控制每頁顯示的記錄數。
  • 支持XML,JSON,數組形式的數據源。
  • 提供豐富的選項配置及方法事件接口。
  • 支持表格排序,支持拖動列、隱藏列。
  • 支持滾動加載數據。
  • 支持實時編輯保存數據內容。
  • 支持子表格及樹形表格。
  • 支持多語言。
  • 目前是免費的。

2、jqGrid使用方式

  1. 首先,您須要到jqGrid官網下載最新版本的程序包,下載地址爲:http://www.trirand.com/blog/?page_id=6
  2. 下載jqGrid皮膚,下載地址爲:http://jqueryui.com/themeroller/
  3. HTML編輯工具建議使用HBuilder 下載地址:http://www.dcloud.io/index.html (注:第一次使用需聯網郵箱註冊,成功登錄後可離線)
  4. 打開HBuilder :文件->新建->WEB項目,填寫項目名稱 (這裏以jqGriddemo爲例) 
    4.1 導入CSS文件 (注意文件路徑) 
    4.1 jqGrid css
    4.1 jqGrid theme css
    4.2 導入JS文件(注:i18n 文件夾下可根據所需語言選一個就好 複製時連同文件夾一塊兒複製) 
    4.2 jqGrid js
    4.2 jqGrid locale js
  5. 導入完成後目錄以下 
    這裏寫圖片描述css

    5.1 打開HBuilder自動生成的index.html 引入相應的css和js 並編寫如下代碼:html

  1. <!DOCTYPE html>
  2. <html>
  3.  
  4. <head>
  5. <meta charset="utf-8" />
  6. <title>DEMO</title>
  7.  
  8. <link rel="stylesheet" type="text/css" href="css/jquery-ui.min.css" />
  9. <link rel="stylesheet" type="text/css" href="css/jquery-ui.theme.min.css" />
  10. <link rel="stylesheet" type="text/css" href="css/ui.jqgrid-bootstrap-ui.css" />
  11. <link rel="stylesheet" type="text/css" href="css/ui.jqgrid.css" />
  12. </head>
  13.  
  14. <body>
  15. <div class="main" id="main">
  16. <!--jqGrid所在-->
  17. <table id="grid-table"></table>
  18. <!--jqGrid 瀏覽導航欄所在-->
  19. <div id="grid-pager"></div>
  20.  
  21. </div>
  22.  
  23. <script src="js/jquery-1.11.0.min.js" type="text/javascript" charset="utf-8"></script>
  24. <script src="js/i18n/grid.locale-cn.js" type="text/javascript" charset="utf-8"></script>
  25. <script src="js/jquery.jqGrid.min.js" type="text/javascript" charset="utf-8"></script>
  26.  
  27. <script type="text/javascript">
  28. //當 datatype 爲"local" 時需填寫
  29. var grid_data = [
  30. { id: "00001",type: "退貨出庫",pay: "1000",name: "abc",text: "ccc"},
  31. { id: "00002",type: "退貨出庫", pay: "1000",name: "abc",text: "aaa"},
  32. { id: "00003",type: "退貨出庫", pay: "1040.06",name: "abc",text: "ddd"
  33. }];
  34. var grid_selector = "#grid-table";
  35. var pager_selector = "#grid-pager";
  36.  
  37. $( document).ready(function () {
  38.  
  39. $( "#grid-table").jqGrid({
  40. data: grid_data,//當 datatype 爲"local" 時需填寫
  41. datatype: "local", //數據來源,本地數據(local,json,jsonp,xml等)
  42. height: 150,//高度,表格高度。可爲數值、百分比或'auto'
  43. //mtype:"GET",//提交方式
  44. colNames: [ '出庫單號', '出庫類型', '總金額', '申請人(單位)', '備註'],
  45. colModel: [{
  46. name: 'id',
  47. index: 'id',//索引。其和後臺交互的參數爲sidx
  48. key: true,//當從服務器端返回的數據中沒有id時,將此做爲惟一rowid使用只有一個列能夠作這項設置。若是設置多於一個,那麼只選取第一個,其餘被忽略
  49. width: 100,
  50. editable: false,
  51. editoptions: {
  52. size: "20",
  53. maxlength: "30"
  54. }
  55. }, {
  56. name: 'type',
  57. index: 'type',
  58. width: 200,//寬度
  59. editable: false,//是否可編輯
  60. edittype: "select",//能夠編輯的類型。可選值:text, textarea, select, checkbox, password, button, image and file.s
  61. editoptions: {
  62. value: "1:採購入庫;2:退用入庫"
  63. }
  64. }, {
  65. name: 'pay',
  66. index: 'pay',
  67. width: 60,
  68. sorttype: "double",
  69. editable: true
  70. }, {
  71. name: 'name',
  72. index: 'name',
  73. width: 150,
  74. editable: false,
  75. editoptions: {
  76. size: "20",
  77. maxlength: "30"
  78. }
  79. }, {
  80. name: 'text',
  81. index: 'text',
  82. width: 250,
  83. sortable: false,
  84. editable: true,
  85. edittype: "textarea",
  86. editoptions: {
  87. rows: "2",
  88. cols: "10"
  89. }
  90. }, ],
  91. viewrecords: true,//是否在瀏覽導航欄顯示記錄總數
  92. rowNum: 10,//每頁顯示記錄數
  93. rowList: [ 10, 20, 30],//用於改變顯示行數的下拉列表框的元素數組。
  94. pager: pager_selector, //分頁、按鈕所在的瀏覽導航欄
  95. altRows: true,//設置爲交替行表格,默認爲false
  96. //toppager: true,//是否在上面顯示瀏覽導航欄
  97. multiselect: true,//是否多選
  98. //multikey: "ctrlKey",//是否只能用Ctrl按鍵多選
  99. multiboxonly: true,//是否只能點擊複選框多選
  100. // subGrid : true,
  101. //sortname:'id',//默認的排序列名
  102. //sortorder:'asc',//默認的排序方式(asc升序,desc降序)
  103. caption: "採購退貨單列表",//表名
  104. autowidth: true//自動寬
  105. });
  106.  
  107. });
  108. </script>
  109. </body>
  110.  
  111. </html>

註釋僅說明了主要參數的用法,具體API 中文可見:http://blog.mn886.net/jqGrid/ 
6. 效果以下 
6 demo前端

相關文章
相關標籤/搜索