edit.html 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>编辑用户</title>
  6. </head>
  7. <body>
  8. <script type="text/html" id="form">
  9. <input type="hidden" name="id" value="{{ d.id }}" />
  10. <div class="mainBox">
  11. <div class="main-container">
  12. <div class="main-container">
  13. <div class="layui-form-item">
  14. <label class="layui-form-label"><text title="必填项" style="color:red;">*</text>用户名</label>
  15. <div class="layui-input-block">
  16. <input type="text" name="username" value="{{ d.username }}" lay-verify="required" autocomplete="off" placeholder="请输入用户名" class="layui-input">
  17. </div>
  18. </div>
  19. <div class="layui-form-item">
  20. <label class="layui-form-label"><text title="必填项" style="color:red;">*</text>昵称</label>
  21. <div class="layui-input-block">
  22. <input type="text" name="nickname" value="{{ d.nickname }}" lay-verify="required" autocomplete="off" placeholder="请输入昵称" class="layui-input">
  23. </div>
  24. </div>
  25. <div class="layui-form-item">
  26. <label class="layui-form-label">密码</label>
  27. <div class="layui-input-block">
  28. <input type="password" name="password" autocomplete="off" placeholder="请输入密码" class="layui-input">
  29. </div>
  30. </div>
  31. <div class="layui-form-item">
  32. <label class="layui-form-label">重复密码</label>
  33. <div class="layui-input-block">
  34. <input type="password" name="re_password" autocomplete="off" placeholder="请输入重复密码" class="layui-input">
  35. </div>
  36. </div>
  37. <div class="layui-form-item">
  38. <label class="layui-form-label">账号状态</label>
  39. <div class="layui-input-block">
  40. <input type="radio" name="status" value="1" title="正常" {{# if(d.status===1){ }}checked="checked"{{# } }} />
  41. <input type="radio" name="status" value="2" title="禁用" {{# if(d.status===2){ }}checked="checked"{{# } }} />
  42. </div>
  43. </div>
  44. <div class="layui-form-item">
  45. <label class="layui-form-label">是否超管</label>
  46. <div class="layui-input-block">
  47. <input type="radio" name="is_super_manager" value="1" title="是" {{# if(d.is_super_manager===1){ }}checked="checked"{{# } }} />
  48. <input type="radio" name="is_super_manager" value="2" title="否" {{# if(d.is_super_manager===2){ }}checked="checked"{{# } }} />
  49. </div>
  50. </div>
  51. <div class="layui-form-item">
  52. <label class="layui-form-label">头像</label>
  53. <div class="layui-input-block">
  54. <div class="laytpUpload"
  55. data-name="avatar"
  56. data-accept="image"
  57. data-width="400"
  58. data-uploaded="{{ d.avatar_file.path }}"
  59. data-uploadedId="{{ d.avatar_file.id }}"
  60. ></div>
  61. </div>
  62. </div>
  63. <div class="layui-form-item">
  64. <label class="layui-form-label">角色</label>
  65. <div class="layui-input-block">
  66. <div class="xmSelect"
  67. data-name="role_ids"
  68. data-sourceType="route"
  69. data-source="/admin.role/index"
  70. data-textField="name"
  71. data-valueField="id"
  72. data-paging="true"
  73. data-direction="up"
  74. data-selected="{{ d.role_ids }}"
  75. ></div>
  76. </div>
  77. </div>
  78. </div>
  79. </div>
  80. </div>
  81. <div class="bottom">
  82. <div class="button-container">
  83. <button type="submit" class="laytp-btn laytp-btn-primary laytp-btn-sm" lay-submit="" lay-filter="laytp-form">
  84. <i class="layui-icon layui-icon-ok"></i>
  85. 提交
  86. </button>
  87. <button type="reset" class="laytp-btn laytp-btn-sm">
  88. <i class="layui-icon layui-icon-refresh"></i>
  89. 重置
  90. </button>
  91. </div>
  92. </div>
  93. </script>
  94. <form class="layui-form" lay-filter="layui-form"></form>
  95. <script>
  96. if(localStorage.getItem("staticDomain")){
  97. document.write("<link rel='stylesheet' href='" + localStorage.getItem("staticDomain") + "/component/layui/css/layui.css?v=" + localStorage.getItem("version") + "'>");
  98. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/layui/layui.js?v="+localStorage.getItem("version")+"'><\/script>");
  99. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/laytp/layuiConfig.js?v="+localStorage.getItem("version")+"'><\/script>");
  100. }else{
  101. document.write("<link rel='stylesheet' href='/static/component/layui/css/layui.css?v=" + localStorage.getItem("version") + "'>");
  102. document.write("<script src='/static/component/layui/layui.js?v="+localStorage.getItem("version")+"'><\/script>");
  103. document.write("<script src='/static/component/laytp/layuiConfig.js?v="+localStorage.getItem("version")+"'><\/script>");
  104. }
  105. </script>
  106. <script>
  107. layui.use(['laytp'],function(){
  108. let form = layui.form;
  109. let $ = layui.jquery;
  110. //获取参数ID
  111. var id = facade.getUrlParam('id');
  112. if(!id){
  113. facade.error('参数ID不能为空');
  114. return false;
  115. }
  116. //获取数据,渲染到对应的节点上
  117. facade.ajax({
  118. route: "/admin.user/info",
  119. data: {id: id},
  120. successAlert: false,
  121. showLoading: true
  122. }).done(function(res){
  123. if(res.code === 0){
  124. layui.laytpl($("#form").html()).render(res.data,function(string){
  125. $("form").html(string);
  126. layui.laytpForm.render();
  127. form.render();
  128. });
  129. }
  130. });
  131. form.on('submit(laytp-form)', function(data){
  132. var btnAnim = layui.button.load({elem:$(this)});
  133. facade.ajax({
  134. route:'/admin.user/edit',
  135. data:data.field
  136. }).done(function(res){
  137. if(res.code === 0){
  138. parent.layui.layer.close(parent.layui.layer.getFrameIndex(window.name));//关闭当前页
  139. parent.layui.table.reload("laytp-table");
  140. }
  141. btnAnim.stop();
  142. }).fail(function(){
  143. btnAnim.stop();
  144. });
  145. return false;
  146. });
  147. })
  148. </script>
  149. </body>
  150. </html>