我正试图强制输入格式(实时显示keyup
事件),并在英国邮政编码的倒数第三个字符前加一个空格。我有一个使用粘贴值的现有函数,但不适用于实时输入(键入时要放置多个空格)。我已经浏览了几个类似的问题,但是没有遇到覆盖输入时格式化输入的任何问题。
jQuery(function($) {
$("#customerPostcode").keyup(function() {
const regex = /^(.*)(\d)/g;
const str = $("#customerPostcode").val();
const subst = `$1 $2`;
const result = str.replace(regex, subst);
$("#customerPostcode").val(result);
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="customerPostcode" type="text">
此处的示例: https://jsfiddle.net/graemebryson/Lu3o5zw1/21/
与以前的子字符串尝试相比,这种方法取得了实质性的进步,但我并不反对后者。任何建议将不胜感激。