我想使用以下.mask
$(document).ready(function() {
$('#postcode').mask('a9a 9a9');
});
但是在每一个Key的力量上,小写字母都是大写的,但也允许输入小写字母(我并不只是想将掩码的定义设置为大写),这就是我的意思到目前为止尝试没有成功(它有点工作,但没有保持光标位置)
$("#postcode").keyup(function (e) {
var this2 = $('#postcode').val().toUpperCase();
$('#postcode').val(this2);
});
答案 0 :(得分:1)
变量this
已经在keyup
事件的范围内定义,并且在分配时可能会导致您的问题。此版本保留光标位置。
jsFiddle上的工作版here
$("#postcode").keyup(function () {
var ucase = $(this).val().toUpperCase()
$(this).val(ucase);
});
答案 1 :(得分:1)
我找到了一个解决方法,将其添加到文本框中:
style="text-transform: uppercase"
答案 2 :(得分:1)
我认为这是更好的解决方案:
$(".editor-template__value").keyup(function (e) {
var start = e.target.selectionStart;
e.target.value = e.target.value.toUpperCase();
e.target.selectionStart = e.target.selectionEnd = start;
});
您的文字将更改为大写,光标位置不会改变。