modal.ejs 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <% include ../shares/delete_hint_modal.ejs %>
  2. <% include ./audit_modal.ejs %>
  3. <% include ../shares/upload_att.ejs %>
  4. <div class="modal fade show" id="psb-decimal" data-backdrop="static">
  5. <div class="modal-dialog" role="document">
  6. <div class="modal-content">
  7. <div class="modal-header">
  8. <h5 class="modal-title">设置</h5>
  9. </div>
  10. <div class="modal-body">
  11. <div class="form-group mb-3">
  12. <h5>小数位数</h5>
  13. <div class="row">
  14. <div class="col-4">
  15. <div class="input-group input-group-sm">
  16. <div class="input-group-prepend">
  17. <span class="input-group-text">单价</span>
  18. </div>
  19. <input type="number" id="psb-up" class="form-control" value="<%- ctx.safeStage.decimal.up %>" org="<%- ctx.safeStage.decimal.up %>" min="0" max="6" maxlength="1" oninput="limitDecimal(this)" <% if (ctx.safeStage.readOnly) { %>disabled<% } %>>
  20. </div>
  21. </div>
  22. <div class="col-4">
  23. <div class="input-group input-group-sm">
  24. <div class="input-group-prepend">
  25. <span class="input-group-text">数量</span>
  26. </div>
  27. <input type="number" id="psb-qty" class="form-control" value="<%- ctx.safeStage.decimal.qty %>" org="<%- ctx.safeStage.decimal.qty %>" min="0" max="6" maxlength="1" oninput="limitDecimal(this)" <% if (ctx.safeStage.readOnly) { %>disabled<% } %>>
  28. </div>
  29. </div>
  30. <div class="col-4">
  31. <div class="input-group input-group-sm">
  32. <div class="input-group-prepend">
  33. <span class="input-group-text">金额</span>
  34. </div>
  35. <input type="number" id="psb-tp" class="form-control" value="<%- ctx.safeStage.decimal.tp %>" org="<%- ctx.safeStage.decimal.tp %>" min="0" max="6" maxlength="1" oninput="limitDecimal(this)" <% if (ctx.safeStage.readOnly) { %>disabled<% } %>>
  36. </div>
  37. </div>
  38. </div>
  39. </div>
  40. </div>
  41. <div class="modal-footer">
  42. <button type="button" class="btn btn-sm btn-secondary" data-dismiss="modal">取消</button>
  43. <% if (!ctx.safeStage.readOnly) { %>
  44. <button type="button" class="btn btn-sm btn-primary" id="psb-decimal-ok">确认</button>
  45. <% } %>
  46. </div>
  47. </div>
  48. </div>
  49. </div>
  50. <script>
  51. // 根据Min Max限制Input输入
  52. function limitInputMinMax (obj) {
  53. if (_.toNumber(obj.value) > _.toNumber(obj.max)) {
  54. obj.value = obj.max;
  55. }
  56. if(_.toNumber(obj.value) < _.toNumber(obj.min)) {
  57. obj.value = obj.min;
  58. }
  59. }
  60. // 根据Maxlength限制input输入
  61. function limitMaxLength (obj) {
  62. if (obj.value.length > obj.maxLength) {
  63. obj.value = obj.value.substr(0, obj.maxLength);
  64. }
  65. }
  66. // 根据正则限制输入
  67. function limitReg(obj, reg) {
  68. obj.value = obj.value.replace(reg, '');
  69. }
  70. // 小数位数 input 输入限制
  71. function limitDecimal(obj) {
  72. limitReg(obj, /[^\d]/g);
  73. limitMaxLength(obj);
  74. limitInputMinMax(obj);
  75. }
  76. </script>