0

我只想在输入类型中使用一位小数和唯一的数字。所以我使用的是 jquery,但问题是他使用了更多的小数??????我想喜欢这个:123.1245454
而不是 12345.12245.4554

$('#edit-discount').keyup(function() {
        var $th = $(this);
        $th.val($th.val().replace(/[^0-9.]/g, function(str) {
            $("#req-productdis").hide();
            $("#alpha1").show();
            return '';
        }));
4

4 回答 4

0

匹配\d+\.?(\d+)?并丢弃所有其余部分。

于 2013-01-16T12:33:44.527 回答
0

看看这是否适合你。

alert(parseFloat('12345.12245.4554'));
于 2013-01-16T12:36:22.617 回答
0

试试这个:

var n = '12345.12245.4554';
n = n.replace(/[^0-9.]/g, ''); // trim to just numbers and dots
n = n.replace(/\./, 'x'); // note: NOT global - replaces first dot with x
n = n.replace(/\./g, ''); // note: global replace - remove all other dots
n = n.replace(/x/, '.'); // swap x back to .
alert(n);
于 2013-01-16T12:41:51.327 回答
0

解决在具有十进制值的字段中查找多个小数点的方法。找不到回归。您可以使用以下代码:

function checkDot(textVal) {
    var amount = textVal.val();
    var dots = amount.split(".").length;
    if (dots > 2) {

        return false;
    } else {
        return true;
    }
}
于 2013-01-17T11:45:25.743 回答