我怎样才能替换“。”通过“,”实时与JQuery的角色?

时间:2016-12-10 06:24:17

标签: jquery input replace

我想控制用户何时在type="number"step="any"的任何输入中写入数字,实时JavaScript.字符替换为, } character。

我尝试使用此代码,但它不起作用:

$(document).ready(function() {
  $('input[type=number,step=any]').replace('.', ',');
}
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.1/jquery.min.js"></script>

<input type="text" />
<input type="number" step="any" />

2 个答案:

答案 0 :(得分:1)

如评论中所述,在type="number"的输入中,您无法输入逗号。输入的数字可以接受floating point numbers,包括否定符号和eE字符,但不接受逗号

您应该只使用文字输入

尝试这样的事情:

$(function() {
  $("input").keyup(function() {
    $(this).val($(this).val().replace(".", ","));
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" />

例如,当您使用type="number"输入时会发生这种情况:

$(function() {
  $("input").keyup(function() {
    $(this).val($(this).val().replace(".", ","));
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="input" type="number" />

答案 1 :(得分:1)

请使用此代码。

$('input[type=number]').keypress(function () {
    $('input[type=number]').val($('input[type=number]').val().replace(/\./g, ','));
});