add.html 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. <!DOCTYPE html>
  2. <html lang="zh" xmlns:th="http://www.thymeleaf.org" >
  3. <head>
  4. <th:block th:include="include :: header('新增购卡记录')" />
  5. <th:block th:include="include :: datetimepicker-css" />
  6. </head>
  7. <body class="white-bg">
  8. <div class="wrapper wrapper-content animated fadeInRight ibox-content">
  9. <form class="form-horizontal m" id="form-record-add">
  10. <div class="col-xs-12">
  11. <div class="form-group">
  12. <label class="col-sm-3 control-label is-required">用户:</label>
  13. <div class="col-sm-8">
  14. <select name="userId" class="form-control" id="userSelect" required></select>
  15. </div>
  16. </div>
  17. </div>
  18. <div class="col-xs-12">
  19. <div class="form-group">
  20. <label class="col-sm-3 control-label is-required">卡种:</label>
  21. <div class="col-sm-8">
  22. <select name="cardId" class="form-control" id="cardSelect" required></select>
  23. </div>
  24. </div>
  25. </div>
  26. <div class="col-xs-12">
  27. <div class="form-group">
  28. <label class="col-sm-3 control-label">价格:</label>
  29. <div class="col-sm-8">
  30. <input name="price" class="form-control" type="text" disabled>
  31. </div>
  32. </div>
  33. </div>
  34. <div class="col-xs-12">
  35. <div class="form-group">
  36. <label class="col-sm-3 control-label is-required">支付方式:</label>
  37. <div class="col-sm-8">
  38. <input name="paymentWay" class="form-control" type="text" required>
  39. </div>
  40. </div>
  41. </div>
  42. <div class="col-xs-12">
  43. <div class="form-group">
  44. <label class="col-sm-3 control-label">备注:</label>
  45. <div class="col-sm-8">
  46. <input name="notes" class="form-control" type="text" maxlength="255">
  47. </div>
  48. </div>
  49. </div>
  50. </form>
  51. </div>
  52. <th:block th:include="include :: footer" />
  53. <th:block th:include="include :: datetimepicker-js" />
  54. <script th:inline="javascript">
  55. var prefix = ctx + "record"
  56. $("#form-record-add").validate({
  57. focusCleanup: true
  58. });
  59. //用户列表
  60. const userSelect = document.getElementById('userSelect');
  61. const userrequestData = {
  62. status: "0",
  63. delFlag: "0"
  64. };
  65. $.ajax({
  66. url: "/system/member/list",
  67. type: "POST",
  68. dataType: "json",
  69. data: userrequestData,
  70. success: function (data) {
  71. // 在这里处理成功获取到的数据
  72. data.rows.forEach(cardType => {
  73. const option = document.createElement('option');
  74. option.value = cardType.id;
  75. option.text = cardType.realName;
  76. userSelect.appendChild(option);
  77. });
  78. },
  79. error: function (xhr, status, error) {
  80. // 在这里处理请求出错的情况
  81. console.log("Error: " + error);
  82. }
  83. });
  84. //卡种列表
  85. const cardSelect = document.getElementById('cardSelect');
  86. const priceInput = document.getElementsByName("price")[0];
  87. const requestData = {
  88. state: "0"
  89. };
  90. $.ajax({
  91. url: "/information/list",
  92. type: "POST",
  93. dataType: "json",
  94. data: requestData,
  95. success: function (data) {
  96. priceInput.value = data.rows[0].price
  97. // 在这里处理成功获取到的数据
  98. data.rows.forEach(cardType => {
  99. const option = document.createElement('option');
  100. option.value = cardType.id;
  101. option.text = cardType.name;
  102. cardSelect.appendChild(option);
  103. })
  104. cardSelect.addEventListener('change', function () {
  105. const selectedOption = cardSelect.options[cardSelect.selectedIndex];
  106. const selectedCardType = data.rows.find(card => card.id === parseInt(selectedOption.value));
  107. if (selectedCardType && priceInput) {
  108. priceInput.value = selectedCardType.price;
  109. }
  110. });
  111. },
  112. error: function (xhr, status, error) {
  113. // 在这里处理请求出错的情况
  114. console.log("Error: " + error);
  115. }
  116. });
  117. function submitHandler() {
  118. if ($.validate.form()) {
  119. const cardName = cardSelect.options[cardSelect.selectedIndex].text
  120. const request = $('#form-record-add').serialize() + '&cardName='+cardName + '&price=' + priceInput.value
  121. $.operate.save(prefix + "/add", request);
  122. }
  123. }
  124. </script>
  125. </body>
  126. </html>