将 Kendo 文本框限制为十进制值的问题

Issue restricting Kendo textbox to decimal values

我使用这种方法来限制用户在 kendo-numeric-textbox 中输入小数。它有效,但当我单击其他数字时它会更新最后一个值。我没有更新最后一个 value.For 示例 如果我输入 12.678 并在此 8 之后输入 6 或任何数字,它会更新最后一位并显示 12.676.How 以解决此错误

$("#tonnage").kendoNumericTextBox({
  format: "n3",
  decimals: sessionStorage.getItem("weightDecimal"),
  restrictDecimals: true,
  min: 0
});

var ton = $("#tonnage").on("keypress", function() {
  restrictDecimals(ton);
})

restrictDecimals: function(ton) {
  if (isNaN(ton.val())) {
    ton.val(0);
  }

  if (ton.val().indexOf(".") > -1 && (ton.val().split('.')[1].length >= (sessionStorage.getItem("weightDecimal"))) {
      ton.val(ton.val().substring(0, ton.val().length - 1));
    }
  },

我认为这可能是您所追求的: https://dojo.telerik.com/UZUwEXOk

我所做的只是将文本框限制为小数点后 3 位,因此在您删除小数部分中的一个值之前,不会注册此值之后的任何输入。我还应用了文本框的格式以在屏幕上显示小数点后 3 位。

所以您应该能够删除您添加到文本框的事件。

可以通过此找到更多信息 link Restirct Decimals API for Numeric TextBox