我有一个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”,并使用微调器迭代“值上调”字,这对于UX来说很糟糕。

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

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

最佳答案

您可以只观看按键事件。
如果它们命中删除,则将值设置为0,负号将被删除。

 $("#jqxNumberInput").jqxNumberInput({

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

09-25 18:34