0

我正在使用 jQuery Knob 插件,但需要显示的值以英镑为单位。理想情况下,这看起来像 123456 英镑。但是,当我使用“格式”挂钩添加 £ 符号时,它不再允许我通过滚动鼠标滚轮甚至输入来设置值。这是我的代码...

$(".dial-step1").knob(
{
   'format': function( value ){
       if(value == undefined || isNaN(value)) {
         value = 0; 
         return '£' + value;
       }
       else {
         return '£' + value;
       }
    }
}
);

如果我将 £ 符号的位置更改为值之后,它会起作用return value + '£';- 但我之前确实需要它。知道为什么这会破坏滚动和键盘输入功能吗?

我知道有很多类似的问题,但所有这些问题似乎都是为了在值的末尾添加一个单位......

4

1 回答 1

0

只需使用相应的parse选项来定义您的值解析方法:

$(".dial-step1").knob({
    format: function( value ){
        if (value == undefined || isNaN(value)) {
            value = 0; 
        }
        return '£' + value;
    },
    parse: function( value ){
        var v = value.toString();

        if (v.substring(0, 1) == '£') { 
            v = v.substring(1);
        }

        return parseFloat(v);
    }
});

完整示例:JSFiddle

于 2015-05-07T13:50:32.253 回答