form.html 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  6. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  7. <title>弹窗实例</title>
  8. <link rel="stylesheet" href="../../assets/libs/layui/css/layui.css"/>
  9. <link rel="stylesheet" href="../../assets/module/admin.css?v=315"/>
  10. <link rel="stylesheet" href="../../assets/module/formSelects/formSelects-v4.css"/>
  11. <!--[if lt IE 9]>
  12. <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
  13. <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  14. <![endif]-->
  15. <style>
  16. [lay-filter="formQA"] .layui-form-item, .layui-inline {
  17. margin-bottom: 0;
  18. margin-top: 20px;
  19. }
  20. .qa-xx-item {
  21. padding-left: 25px;
  22. margin-bottom: 20px;
  23. }
  24. .qa-xx-item-title {
  25. position: absolute;
  26. left: 0;
  27. line-height: 38px;
  28. }
  29. </style>
  30. </head>
  31. <body>
  32. <!-- 加载动画 -->
  33. <div class="page-loading">
  34. <div class="ball-loader">
  35. <span></span><span></span><span></span><span></span>
  36. </div>
  37. </div>
  38. <!-- 正文开始 -->
  39. <div class="layui-fluid">
  40. <div class="layui-card">
  41. <div class="layui-card-header">添加试题</div>
  42. <div class="layui-card-body">
  43. <form class="layui-form" lay-filter="formQA" style="max-width: 960px;">
  44. <input type="hidden" name="questionId" value=""/>
  45. <div class="layui-form-item" style="margin-top: 0;">
  46. <div class="layui-inline">
  47. <label class="layui-form-label">试题类型:</label>
  48. <div class="layui-input-inline">
  49. <select name="questionTypeId" lay-verType="tips" lay-verify="required" required>
  50. <option value="">请选择</option>
  51. <option value="1">有机</option>
  52. <option value="2">无机</option>
  53. <option value="3">物化</option>
  54. <option value="7">模拟电路</option>
  55. <option value="8">数字电路</option>
  56. </select>
  57. </div>
  58. </div>
  59. <div class="layui-inline">
  60. <label class="layui-form-label">难度系数:</label>
  61. <div class="layui-input-inline">
  62. <select name="difficulty" lay-verType="tips" lay-verify="required" required>
  63. <option value="">请选择</option>
  64. <option value="1">0.5</option>
  65. <option value="2">1</option>
  66. </select>
  67. </div>
  68. </div>
  69. </div>
  70. <div class="layui-form-item">
  71. <label class="layui-form-label">试题类型:</label>
  72. <div class="layui-input-block">
  73. <input type="radio" lay-filter="raQT" name="typeId" value="1" title="单选题" checked>
  74. <input type="radio" lay-filter="raQT" name="typeId" value="2" title="多选题">
  75. <input type="radio" lay-filter="raQT" name="typeId" value="3" title="判断题">
  76. </div>
  77. </div>
  78. <div class="layui-form-item">
  79. <label class="layui-form-label">试题内容:</label>
  80. <div class="layui-input-block">
  81. <textarea name="content" id="qaContent"></textarea>
  82. </div>
  83. </div>
  84. <div class="layui-form-item layui-form-text" id="xxGroup">
  85. </div>
  86. <div class="layui-form-item layui-form-text">
  87. <label class="layui-form-label">正确答案:</label>
  88. <div id="qaRIGroup" class="layui-input-block">
  89. </div>
  90. </div>
  91. <div class="layui-form-item">
  92. <div class="layui-input-block text-center">
  93. <button ew-event="closeThisTabs" type="button" class="layui-btn layui-btn-primary">&emsp;关闭&emsp;</button>
  94. <button class="layui-btn" lay-filter="formSubmitAQ" lay-submit>&emsp;提交&emsp;</button>
  95. </div>
  96. </div>
  97. </form>
  98. </div>
  99. </div>
  100. </div>
  101. <!-- 不同类型题目的正确答案选项 -->
  102. <script type="text/html" id="qaRI1">
  103. <!-- 单选题 -->
  104. <div style="max-width: 160px;">
  105. <select name="answer" lay-verType="tips" lay-verify="required" required>
  106. <option value="A">A</option>
  107. <option value="B">B</option>
  108. <option value="C">C</option>
  109. <option value="D">D</option>
  110. </select>
  111. </div>
  112. </script>
  113. <script type="text/html" id="qaRI2">
  114. <!-- 多选题 -->
  115. <div class="xm-select-nri" style="max-width: 220px;">
  116. <select name="answer" xm-select="qaRIMore" lay-verType="tips" lay-verify="required" required>
  117. <option value="A">A</option>
  118. <option value="B">B</option>
  119. <option value="C">C</option>
  120. <option value="D">D</option>
  121. </select>
  122. </div>
  123. </script>
  124. <script type="text/html" id="qaRI3">
  125. <!-- 判断题 -->
  126. <div style="max-width: 160px;">
  127. <select name="answer" lay-verType="tips" lay-verify="required" required>
  128. <option value="T">正确</option>
  129. <option value="F">错误</option>
  130. </select>
  131. </div>
  132. </script>
  133. <script type="text/html" id="xxHtml">
  134. <label class="layui-form-label">试题选项:</label>
  135. <div class="layui-input-block">
  136. <div class="qa-xx-item">
  137. <span class="qa-xx-item-title">A:</span>
  138. <input type="text" name="xxA" placeholder="请输入选项内容" class="layui-input"
  139. autocomplete="off" lay-verType="tips" lay-verify="required" required/>
  140. </div>
  141. <div class="qa-xx-item">
  142. <span class="qa-xx-item-title">B:</span>
  143. <input type="text" name="xxB" placeholder="请输入选项内容" class="layui-input"
  144. autocomplete="off" lay-verType="tips" lay-verify="required" required/>
  145. </div>
  146. <div class="qa-xx-item">
  147. <span class="qa-xx-item-title">C:</span>
  148. <input type="text" name="xxC" placeholder="请输入选项内容" class="layui-input"
  149. autocomplete="off" lay-verType="tips" lay-verify="required" required/>
  150. </div>
  151. <div class="qa-xx-item">
  152. <span class="qa-xx-item-title">D:</span>
  153. <input type="text" name="xxD" placeholder="请输入选项内容" class="layui-input" autocomplete="off"/>
  154. </div>
  155. </div>
  156. </script>
  157. <!-- js部分 -->
  158. <script type="text/javascript" src="../../assets/libs/layui/layui.js"></script>
  159. <script type="text/javascript" src="../../assets/js/common.js?v=315"></script>
  160. <script>
  161. layui.use(['layer', 'form', 'formSelects', 'layedit'], function () {
  162. var $ = layui.jquery;
  163. var layer = layui.layer;
  164. var form = layui.form;
  165. var formSelects = layui.formSelects;
  166. var layedit = layui.layedit;
  167. var editIndex = layedit.build('qaContent'); // 建立编辑器
  168. // 表单提交事件
  169. form.on('submit(formSubmitAQ)', function (data) {
  170. layer.msg("表单验证通过", {icon: 1});
  171. return false;
  172. });
  173. // 试题类型切换事件
  174. form.on('radio(raQT)', function (data) {
  175. changeQT(data.value);
  176. });
  177. function changeQT(value, sel) {
  178. if (value == 1) {
  179. $('#qaRIGroup').html($('#qaRI1').html());
  180. form.render('select');
  181. $('#xxGroup').html($('#xxHtml').html());
  182. } else if (value == 2) {
  183. $('#qaRIGroup').html($('#qaRI2').html());
  184. if (sel) {
  185. formSelects.render('qaRIMore', {init: sel.split('')});
  186. } else {
  187. formSelects.render('qaRIMore');
  188. }
  189. formSelects.btns('qaRIMore', ['select', 'remove', 'reverse'], {space: '13px'});
  190. $('#xxGroup').html($('#xxHtml').html());
  191. } else if (value == 3) {
  192. $('#qaRIGroup').html($('#qaRI3').html());
  193. form.render('select');
  194. $('#xxGroup').html('');
  195. }
  196. }
  197. setTimeout(function () {
  198. changeQT(1);
  199. }, 50);
  200. });
  201. </script>
  202. </body>
  203. </html>