sysIndexColumnSetParam.jsp 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <%@page language="java" pageEncoding="UTF-8"%>
  2. <%@include file="/commons/include/html_doctype.html"%>
  3. <%@ taglib prefix="ht" tagdir="/WEB-INF/tags/wf"%>
  4. <html>
  5. <head>
  6. <title>编辑 首页布局</title>
  7. <%@include file="/commons/include/form.jsp" %>
  8. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jquery.fix.clone.js"></script>
  9. <script type="text/javascript">
  10. /*KILLDIALOG*/
  11. var dialog = frameElement.dialog; //调用页面的dialog对象(ligerui对象)
  12. $(function(){
  13. initDataParam(dialog.get("dataParam"));
  14. $("a.save").click(function(){
  15. var json = [];
  16. if(nameValid()){
  17. $.ligerDialog.error("重复的参数值,请检查!","提示信息");
  18. return;
  19. }
  20. $("#trContainer tr[var='paramTr']").each(function(){
  21. var me = $(this),obj={};
  22. obj.name =$("[var='name']",me).val();
  23. obj.type =$("[var='type']",me).val();
  24. obj.mode =$("[var='mode']",me).val();
  25. obj.value =$("[var='value']",me).val();
  26. json.push(obj);
  27. });
  28. dialog.get("sucCall")(JSON2.stringify(json));
  29. dialog.close();
  30. });
  31. });
  32. function nameValid(){
  33. var name =new Array();
  34. $("#trContainer").find("[var='name']").each(function() {
  35. name.push( $(this).val());
  36. });
  37. return isRepeat(name);
  38. }
  39. function isRepeat(arr) {
  40. var hash = {};
  41. for(var i in arr) {
  42. if(hash[arr[i]]) {
  43. return true;
  44. }
  45. // 不存在该元素,则赋值为true,可以赋任意值,相应的修改if判断条件即可
  46. hash[arr[i]] = true;
  47. }
  48. return false;
  49. }
  50. function initDataParam (dataParam) {
  51. if ($.isEmpty(dataParam))
  52. return;
  53. var tr = $($("#paramTemplate .table-detail tr")[0]).clone(true, true);
  54. var params = $.parseJSON(dataParam);
  55. for (var i = 0, c; c = params[i++];) {
  56. $("input[var='name']", tr).val(c.name);
  57. $("select[var='type']", tr).val(c.type);
  58. $("select[var='mode']", tr).val(c.mode);
  59. $("textarea[var='value']", tr).val(c.value);
  60. var tr1 = tr.clone(true, true);
  61. $("#trContainer").append(tr1);
  62. }
  63. }
  64. function addDataParam(){
  65. var tr = $($("#paramTemplate .table-detail tr")[0]).clone(true, true);
  66. $("#trContainer").append(tr);
  67. }
  68. function moveTr (obj, isUp) {
  69. var thisTr = $(obj).parents("tr");
  70. if (isUp) {
  71. var prevTr = $(thisTr).prev();
  72. if (prevTr) {
  73. thisTr.insertBefore(prevTr);
  74. }
  75. } else {
  76. var nextTr = $(thisTr).next();
  77. if (nextTr) {
  78. thisTr.insertAfter(nextTr);
  79. }
  80. }
  81. }
  82. function delTr(obj) {
  83. $(obj).closest("tr").remove();
  84. }
  85. </script>
  86. </head>
  87. <body>
  88. <div class="panel">
  89. <div class="panel-top">
  90. <div class="panel-toolbar">
  91. <div class="toolBar">
  92. <div class="group"><a class="link save" href="javascript:void(0);"><span></span>保存</a></div>
  93. <div class="group"><a id="btnAddParameter" onclick="addDataParam()" class="link add"><span></span>添加</a></div>
  94. <div class="group"><a class="link close" href="javascript:dialog.close();"><span></span>关闭</a></div>
  95. </div>
  96. </div>
  97. </div>
  98. <div class="panel-body">
  99. <table cellpadding="1" cellspacing="1" class="table-grid">
  100. <tr>
  101. <th align="center"><input class="pk" type="checkbox"/></th>
  102. <th align="center">参数名</th>
  103. <th align="center">参数类型</th>
  104. <th align="center">值来源</th>
  105. <th align="center">参数值</th>
  106. <th align="center">操作</th>
  107. </tr>
  108. <tbody id="trContainer">
  109. </tbody>
  110. </table>
  111. </div>
  112. <div id="paramTemplate" style="display: none;">
  113. <table cellpadding="1" cellspacing="1" class="table-detail">
  114. <tbody>
  115. <tr var="paramTr">
  116. <td ><input class="pk" type="checkbox" name="select"/>
  117. <td><input type="text" var="name" value=""/> </td>
  118. <td><select var="type">
  119. <option value="string">String</option>
  120. <option value="int">int</option>
  121. <option value="float">float</option>
  122. <option value="double">double</option>
  123. <option value="byte">byte</option>
  124. <option value="short">short</option>
  125. <option value="long">long</option>
  126. <option value="boolean">boolean</option>
  127. <option value="date">date</option>
  128. </select>
  129. </td>
  130. <td>
  131. <select var="mode" >
  132. <option value="0">固定值</option>
  133. <option value="1">动态传入</option>
  134. <option value="2">脚本</option>
  135. </select>
  136. </td>
  137. <td>
  138. <textarea rows="3" cols="20" var="value"></textarea>
  139. </td>
  140. <td>
  141. <a class="link moveup" href="javascript:;" title="上移" onclick="moveTr(this,true)"></a>
  142. <a class="link movedown" href="javascript:;" title="下移" onclick="moveTr(this,false)"></a>
  143. <a class="link del" href="javascript:;" title="删除" onclick="delTr(this)"></a>
  144. </td>
  145. </tr>
  146. </tbody>
  147. </table>
  148. </div>
  149. </body>
  150. </html>