Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 允许数字形式的十进制值_Jquery_Decimal - Fatal编程技术网

Jquery 允许数字形式的十进制值

Jquery 允许数字形式的十进制值,jquery,decimal,Jquery,Decimal,我已经登记了一些金额的表格,必须输入。金额以逗号分隔,不允许使用小数。我想在金额上允许小数点。先谢谢你 这是我的密码: (function($, undefined) { "use strict"; $(function() { var $form = $( ".number" ); var $input = $form.find( ".no" ); $input.on( "keyup", function( event

我已经登记了一些金额的表格,必须输入。金额以逗号分隔,不允许使用小数。我想在金额上允许小数点。先谢谢你

这是我的密码:

(function($, undefined) {

    "use strict";


    $(function() {

        var $form = $( ".number" );
        var $input = $form.find( ".no" );

        $input.on( "keyup", function( event ) {

            var selection = window.getSelection().toString();
            if ( selection !== '' ) {
                return;
            }


            if ( $.inArray( event.keyCode, [38,40,37,39] ) !== -1 ) {
                return;
            }


            var $this = $( this );


            var input = $this.val();

            var input = input.replace(/[\D\s\._\-]+/g, "");
            input = input ? parseInt( input, 10 ) : 0;

            $this.val( function() {
                return ( input === 0 ) ? "" : input.toLocaleString( "en-US" );
            });

        });



    });

})(jQuery);

谢谢你的回答,但它不起作用。现在,金额在100或1000之后不被逗号除。但是十进制是允许的如果逗号是十进制分隔符,那么它就不能用作千位分隔符。我能找到解决办法吗。有人能帮我摆脱这个吗???
$(function() {

var $form = $( ".number" );
var $input = $form.find( ".no" );

$input.on( "keyup", function( event ) {



    var selection = window.getSelection().toString();
    if ( selection !== '' ) {
        return;
    }


    if ( $.inArray( event.keyCode, [38,40,37,39] ) !== -1 ) {
        return;
    }


    var $this = $( this );


    var input = $this.val();

            input = input ? parseFloat( input) : 0;

            $this.val( function() {
                return ( input === 0 ) ? "" : input.toLocaleString( "en-US" );
            } );
} );



  });
   })(jQuery);