我想控制用户何时在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" />
答案 0 :(得分:1)
如评论中所述,在type="number"
的输入中,您无法输入逗号。输入的数字可以接受floating point numbers,包括否定符号和e
或E
字符,但不接受逗号
您应该只使用文字输入
尝试这样的事情:
$(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, ','));
});