浏览代码

fix issue where the value of a numeric masked input is set to 0,00 when value is set to an empty string

Christian Tu 6 年之前
父节点
当前提交
836b4eeac2
共有 2 个文件被更改,包括 19 次插入0 次删除
  1. 4 0
      js/inputmask.numeric.extensions.js
  2. 15 0
      qunit/tests_numeric.js

+ 4 - 0
js/inputmask.numeric.extensions.js

@@ -252,6 +252,10 @@
                     processValue = processValue.replace(/^0/g, "");
                 }
 
+                if (processValue === opts.radixPoint) {
+                    processValue = "";
+                }
+
                 if (processValue.charAt(0) === opts.radixPoint && opts.radixPoint !== "" && opts.numericInput !== true) {
                     processValue = "0" + processValue;
                 }

+ 15 - 0
qunit/tests_numeric.js

@@ -2114,4 +2114,19 @@ export default function (qunit, Inputmask) {
 
         assert.equal(testmask.value, "0,001", "Result " + testmask.value);
     });
+
+    qunit.test("numeric clear value - honboubao", function (assert) {
+        var $fixture = $("#qunit-fixture");
+        $fixture.append('<input type="text" id="testmask"/>');
+        var testmask = document.getElementById("testmask");
+        Inputmask("numeric", {
+            radixPoint: ",",
+            placeholder: "_",
+            digits: 2,
+            digitsOptional: false
+        }).mask(testmask);
+        testmask.value = "";
+
+        assert.equal(testmask.value, "", "Result \"" + testmask.value + "\"");
+    });
 };