jqxNumberInput 强制用户在数字值前面保留 (-) 负号

jqxNumberInput forceing user to keep (-) negative sign in front of number value

本文关键字:保留 负号 前面 用户 数字 jqxNumberInput      更新时间:2023-09-26

我有一个JQXGrid,它利用jqxNumberInput允许用户输入数字和其他内容。

createeditor: function (row, cellvalue, editor) {
     editor.jqxNumberInput({ spinMode: "simple", decimalSeparator: decimalSeparator, groupSeparator: groupSeparator });
},

这样宣布。

我的问题是,当输入在字段中有一个负数,即"-110.50"时,行为变得棘手。 如果用户选择整个输入并点击删除,则新值为"-0.00"。 如果他们随后尝试在输入中输入"50.50",则负数将删除数字"-50.50"。

您可以突出显示和删除任何您想要的内容,但摆脱该负面的唯一方法是将数字设置为"-0.00"并使用微调器迭代值 up 单词,这对 UX 来说很糟糕。

我做了谷歌搜索的事情,但我在 api 或其他与此问题相关的 SO 问题中找不到任何内容。

如果有人遇到这个问题并有解决方案,将不胜感激。

您可以只关注 keyup 事件。如果他们点击删除,请将值设置为 0,减号将被删除。

 $("#jqxNumberInput").jqxNumberInput({
 }).keyup(function(evn){
     if(evn.keyCode === 46){
         //they hit delete so set the value to 0
         $('#jqxNumberInput').jqxNumberInput('setDecimal', 0);
     }
 });

要摆脱负数,您可以按"-"切换负数。