代码之家  ›  专栏  ›  技术社区  ›  Setu Kumar Basak

如何使用jQuery掩码小数点输入?

  •  -1
  • Setu Kumar Basak  · 技术社区  · 7 年前

    我以前用过Telerik的 RadNumericTextBox 输入小数如下:

    <telerik:RadNumericTextBox ID="txtNewAmt" runat="server" EnableViewState="false"
               Width="100px" CssClass="input" Type="Number" EnabledStyle-HorizontalAlign="Right"
               PlacesBeforeDecimal="11" NumberFormat-DecimalDigits="2">
          <ClientEvents OnKeyPress="validateRegExMaskNumeric" />
    </telerik:RadNumericTextBox>
    

    这里,在输入中,

    1. 只允许数字。
    2. 数字将从右边对齐。
    3. 小数点前的位数可以小于等于11,小数点后的位数可以小于等于2。

    但是,我不想再使用telerik了。

    如何使用 Jquery 是吗?可以用 asp:Textbox 是吗?

    2 回复  |  直到 7 年前
        1
  •  0
  •   Setu Kumar Basak    7 年前

    我必须在两者之间做出选择 jQuery Mask Plugin MaskInput 插件。jquery mask plguin比maskinput更大,因为它包含更多的特性。但是,为了我的需要,我选择了maskinput插件。

    你可以找到一些例子 here 我的经验 here 是的。

        2
  •  -1
  •   sree    7 年前

    尝试下面的代码

    文本框:<input id=“txtqty”type=“text”/>

    滑动分页

    $(function () {
    $("input[id*='txtQty']").keydown(function (event) {
    
    
        if (event.shiftKey == true) {
            event.preventDefault();
        }
    
        if ((event.keyCode >= 48 && event.keyCode <= 57) || 
            (event.keyCode >= 96 && event.keyCode <= 105) || 
            event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 37 ||
            event.keyCode == 39 || event.keyCode == 46 || event.keyCode == 190) {
    
        } else {
            event.preventDefault();
        }
    
        if($(this).val().indexOf('.') !== -1 && event.keyCode == 190)
            event.preventDefault(); 
        //if a decimal has been added, disable the "."-button
    
    });
    

    });