cost_decimal.ejs 2.9 KB

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