editgrideven.htm 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <title></title>
  5. <link href="../../../lib/ligerUI/skins/Aqua/css/ligerui-all.css" rel="stylesheet" type="text/css" />
  6. <script src="../../../lib/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
  7. <script src="../../../lib/json2.js" type="text/javascript"></script>
  8. <script src="../../../lib/ligerUI/js/core/base.js" type="text/javascript"></script>
  9. <script src="../../../lib/ligerUI/js/plugins/ligerDialog.js" type="text/javascript"></script>
  10. <script src="../../../lib/ligerUI/js/plugins/ligerTextBox.js" type="text/javascript"></script>
  11. <script src="../../../lib/ligerUI/js/plugins/ligerCheckBox.js" type="text/javascript"></script>
  12. <script src="../../../lib/ligerUI/js/plugins/ligerComboBox.js" type="text/javascript"></script>
  13. <script src="../../../lib/ligerUI/js/plugins/ligerGrid.js" type="text/javascript"></script>
  14. <script src="../../../lib/ligerUI/js/plugins/ligerDateEditor.js" type="text/javascript"></script>
  15. <script src="../../../lib/ligerUI/js/plugins/ligerSpinner.js" type="text/javascript"></script>
  16. <script src="../EmployeeData.js" type="text/javascript"></script>
  17. <script src="../DepartmentData.js" type="text/javascript"></script>
  18. <script type="text/javascript">
  19. var DepartmentList = DepartmentData.Rows;
  20. var sexData = [{ Sex: 1, text: '男' }, { Sex: 2, text: '女'}];
  21. $(f_initGrid);
  22. function f_initGrid()
  23. {
  24. $("#maingrid").ligerGrid({
  25. columns: [
  26. { display: '主键', name: 'ID', width: 50, type: 'int' },
  27. { display: '名字', name: 'RealName',
  28. editor: { type: 'text' }
  29. },
  30. { display: '性别', width: 50, name: 'Sex',
  31. editor: { type: 'select', data: sexData, valueColumnName: 'Sex' },
  32. render: function (item)
  33. {
  34. if (parseInt(item.Sex) == 1) return '男';
  35. return '女';
  36. }
  37. },
  38. { display: '年龄', name: 'Age', width: 50, type: 'int', editor: { type: 'int'} },
  39. { display: '入职日期', name: 'IncomeDay', type: 'date', width: 100, editor: { type: 'date'} },
  40. { display: '部门', name: 'DepartmentID', width: 120, isSort: false,
  41. editor: { type: 'select', data: DepartmentList, valueColumnName: 'DepartmentID', displayColumnName: 'DepartmentName' }, render: function (item)
  42. {
  43. for (var i = 0; i < DepartmentList.length; i++)
  44. {
  45. if (DepartmentList[i]['DepartmentID'] == item.DepartmentID)
  46. return DepartmentList[i]['DepartmentName']
  47. }
  48. return item.DepartmentName;
  49. }
  50. },
  51. { display: '地址', name: 'Address',
  52. editor: { type: 'text' }, align: 'left', width: 300
  53. }
  54. ],
  55. enabledEdit: true, isScroll: false, onBeforeEdit: f_onBeforeEdit, onBeforeSubmitEdit: f_onBeforeSubmitEdit,
  56. onAfterEdit: f_onAfterEdit,
  57. data: EmployeeData,
  58. width: '100%'
  59. });
  60. }
  61. //只允许编辑前3行
  62. function f_onBeforeEdit(e)
  63. {
  64. if(e.rowindex<=2) return true;
  65. return false;
  66. }
  67. //限制年龄
  68. function f_onBeforeSubmitEdit(e)
  69. {
  70. if (e.columnname == "Age")
  71. {
  72. if (e.value < 20 || e.value > 30) return false;
  73. }
  74. return true;
  75. }
  76. //编辑后事件
  77. function f_onAfterEdit(e)
  78. {
  79. if (e.columnname == "Age")
  80. {
  81. alert(e.value);
  82. }
  83. }
  84. function getSelected()
  85. {
  86. var manager = $("#maingrid").ligerGetGridManager();
  87. var row = manager.getSelectedRow();
  88. if (!row) { alert('请选择行'); return; }
  89. alert(JSON.stringify(row));
  90. }
  91. function getData()
  92. {
  93. var manager = $("#maingrid").ligerGetGridManager();
  94. var data = manager.getData();
  95. alert(JSON.stringify(data));
  96. }
  97. </script>
  98. </head>
  99. <body style="padding:10px">
  100. <div id="maingrid" style="margin-top:20px"></div> <br />
  101. <br />
  102. <p>1,编辑前事件 只允许编辑前3行</p>
  103. <p>2,编辑提交前事件 限制年龄 20 -30</p>
  104. <p>3,编辑后事件 打印年龄</p>
  105. <br />
  106. <a class="l-button" style="width:120px" onclick="getSelected()">获取选中的值(选择行)</a>
  107. <br />
  108. <a class="l-button" style="width:120px" onclick="getData()">获取当前的值</a>
  109. <div style="display:none;">
  110. <!-- g data total ttt -->
  111. </div>
  112. </body>
  113. </html>