每当出现一个点 '.'在我的输入 (type=number) 字段中输入,我希望将其替换为逗号“,”。
$(box).find('input[type=number]').keypress(function(evt){
if(evt.which==46){
$(this).val($(this).val()+',');
evt.preventDefault();
}
});
该事件触发得很好,但相反,该字段完全是空的。怎么了?
编辑
我这样做的原因是 Chrome(最新版本)与 HTML5 的建议相反,在输入 type=number 中使用逗号并丢弃点。我目前只为 Chrome 开发,因为目前我无法在其他地方测试我的应用程序。对这种(异常?)情况的任何评论将不胜感激。
最佳答案
$(this).val($(this).val() + ',');
如果您在打字时总是想在文本末尾添加“,”符号,这可能会起作用。但是,如果将光标放在文本中间,然后按“.”会怎么样?标志?
关于jQuery:修改按键上的输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13532912/