perm.html 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. <div class="bjui-pageContent">
  2. <form action="__APP__{$action}" data-toggle="ajaxform">
  3. <div class="pageFormContent" data-layout-h="0" style="overflow: auto;">
  4. <input type="hidden" name="list" value='set2'>
  5. <input type="hidden" name="permid" value='{$permid}'>
  6. <span style="color:red;">角色查看数据范围:</span>
  7. <input type="radio" name="dataperm" value="1" data-toggle="icheck" <if condition="$dataperm eq 1"> checked=""</if> data-label="个人数据">
  8. <input type="radio" name="dataperm" value="2" data-toggle="icheck" <if condition="$dataperm eq 2"> checked=""</if> data-label="所属组及下组">
  9. <input type="radio" name="dataperm" value="3" data-toggle="icheck" <if condition="$dataperm eq 3"> checked=""</if> data-label="所有数据">
  10. <table id="perm_tree" data-toggle="datagrid" width="95%">
  11. <thead>
  12. <tr>
  13. <th data-options="{name:'title', align:'center', width:300 }">权限菜单</th>
  14. <th data-options="{name:'id',render:'perm_1', align:'left',width:400 }">权限</th>
  15. </tr>
  16. </thead>
  17. </table>
  18. </div>
  19. </div>
  20. <div class="bjui-pageFooter">
  21. <ul>
  22. <li><button type="button" class="btn-close" data-icon="close">取消</button></li>
  23. <li><button type="submit" class="btn-default" data-icon="save">保存</button></li>
  24. <li><button type="button" class="btn-default" data-icon="check" onclick="quanxuanf()">全选</button></li>
  25. <li><button type="button" class="btn-default" data-icon="close" onclick="quanxuany()">取消全选</button></li>
  26. </ul>
  27. </div>
  28. </form>
  29. <script type="text/javascript">
  30. //document.getElementByClassName('dialogContent unitBox').style('');
  31. $('#perm_tree').datagrid({
  32. width: '100%',
  33. height: '100%',
  34. //gridTitle: '树状datagrid 示例 ',//addLocation: 'last',//添加列的位置//editUrl: '../../json/ajaxDone.json',//toolbarItem:'add, cancel, del, save',
  35. showToolbar: false,
  36. local: 'local',
  37. dataUrl: '__MODULE__/Role/perm',
  38. inlineEditMult: false,
  39. isTree: 'title',
  40. filterThead :false,
  41. fieldSortable: false,
  42. columnMenu: false,
  43. paging: false,
  44. treeOptions: {
  45. expandAll: false,
  46. add: false,//显示添加一行
  47. simpleData: true,
  48. keys: {
  49. parentKey: 'pid'
  50. }
  51. }
  52. });
  53. function perm_1(tr,data){
  54. //console.log(tr);//name属性
  55. //console.log(data);//行
  56. var html='';
  57. /*BJUI.ajax('doajax', {
  58. url: '__MODULE__/Role/perm',
  59. data:{'list':'get2','id':tr},
  60. loadingmask: true,
  61. okCallback: function(json, options) {
  62. //console.log('返回内容:\n'+ JSON.stringify(json));
  63. //console.log(options);
  64. var res=JSON.stringify(json);
  65. var val=JSON.parse(res);
  66. for(var i=0;i< val.length;i++){
  67. //console.log(val[i].title);
  68. //html+='<input type="checkbox" name="checkbox" id="" value="1" data-toggle="icheck" data-label="'+val[i].title+'">&nbsp;';
  69. var input = document.createElement("input");
  70. input.setAttribute('type', 'checkbox');
  71. //input.setAttribute('value', '1');
  72. //input.setAttribute('name', 'checkbox'); //设置文本为只读类型
  73. //input.setAttribute('data-toggle', 'icheck');
  74. //input.setAttribute('data-label', val[i].title);
  75. //$('#permid'+tr).appendChild(input);
  76. document.getElementById('permid'+tr).appendChild(input);
  77. }
  78. }
  79. });
  80. */
  81. /* $.ajax({
  82. async: false,
  83. type : "POST",
  84. url : '__MODULE__/Role/perm/',
  85. dataType : 'json',
  86. data: {'list':'get2','id':tr},
  87. success : function(data) {
  88. var res=JSON.stringify(data);
  89. var val=JSON.parse(res);
  90. var arr={$pers};
  91. for(var i=0;i< val.length;i++){
  92. var iii='';
  93. if(isarr(arr,val[i].id)){
  94. iii='checked="checked"';
  95. }else{
  96. //console.log('失败');
  97. }
  98. html+='<input type="checkbox" '+iii+' name="checkbox_'+val[i].id+'" value="'+val[i].id+'" data-toggle="icheck" data-label="'+val[i].title+'">&nbsp;';
  99. }
  100. }
  101. }); */
  102. var arr={$pers};
  103. if(data.allid==null){
  104. var nn='';
  105. if(isarr(arr,tr)){
  106. nn='checked="checked"';
  107. }
  108. html+='<input type="checkbox" '+nn+' name="checkbox_'+tr+'" value="'+tr+'" data-toggle="icheck" class="permck" data-label="查看">';
  109. }
  110. if(data.allid!=null){
  111. var nn='';
  112. if(isarr(arr,tr)){
  113. nn='checked="checked"';
  114. }
  115. html+='<input type="checkbox" '+nn+' name="checkbox_'+tr+'" value="'+tr+'" data-toggle="icheck" class="permck" data-label="查看">';
  116. var str1=data.allid;
  117. var str2=data.ctitle;
  118. strs1=str1.split(",");//id
  119. strs2=str2.split(",");//title
  120. for (i=0;i< strs1.length ;i++ )
  121. {
  122. var iii='';
  123. if(isarr(arr,strs1[i])){
  124. iii='checked="checked"';
  125. }
  126. html+='<input type="checkbox" '+iii+' name="checkbox_'+strs1[i]+'" value="'+strs1[i]+'" data-toggle="icheck" class="permck" data-label="'+strs2[i]+'">&nbsp;';
  127. }
  128. }
  129. return html;
  130. }
  131. function isarr(arr, obj) {
  132. var i = arr.length;
  133. while (i--) {
  134. if (arr[i] === obj) {
  135. return true;
  136. }
  137. }
  138. return false;
  139. }
  140. function quanxuanf(){
  141. $('.permck').iCheck('check');
  142. }
  143. function quanxuany(){
  144. $('.permck').iCheck('uncheck');
  145. }
  146. </script>