我想使用Java Script或jquery在html输入框中的每2位数后自动插入冒号.
我按下了
00然后像00一样自动插入冒号:
继续保持最多5次
00:00:00:00:00:00
Xot*_*750 12
试试这个
<div id="dialog-message" title="Enter MAC address">
<input id="macAddress" type="text" maxlength="17"></input>
</div>
var macAddress = $("#macAddress");
$(function () {
$("#dialog-message").dialog({
modal: true,
buttons: {
Ok: function () {
$(this).dialog("close");
alert("MAc address entered: " + macAddress.val());
}
}
});
});
function formatMAC(e) {
var r = /([a-f0-9]{2})([a-f0-9]{2})/i,
str = e.target.value.replace(/[^a-f0-9]/ig, "");
while (r.test(str)) {
str = str.replace(r, '$1' + ':' + '$2');
}
e.target.value = str.slice(0, 17);
};
macAddress.on("keyup", formatMAC);
Run Code Online (Sandbox Code Playgroud)
在没有jquery铃声和口哨声的纯javascript中,这是同样的事情.
<input id="macAddress" type="text" maxlength="17"></input>
var macAddress = document.getElementById("macAddress");
function formatMAC(e) {
var r = /([a-f0-9]{2})([a-f0-9]{2})/i,
str = e.target.value.replace(/[^a-f0-9]/ig, "");
while (r.test(str)) {
str = str.replace(r, '$1' + ':' + '$2');
}
e.target.value = str.slice(0, 17);
};
macAddress.addEventListener("keyup", formatMAC, false);
Run Code Online (Sandbox Code Playgroud)