jsmaskプラグインを使用して電話番号をマスクしています。 要件は、それはそれは私がこの $('#Telephone').mask('+0000000 000 000 0000', { reverse: true });
を試してみました電話番号のカスタムマスク
の間にスペースを持つことができ、開始
- です。 inbuilt形式がありますか、それともカスタム形式がありますか? アドバイスしてください。
jsmaskプラグインを使用して電話番号をマスクしています。 要件は、それはそれは私がこの $('#Telephone').mask('+0000000 000 000 0000', { reverse: true });
を試してみました電話番号のカスタムマスク
の間にスペースを持つことができ、開始
次のコードが動作しています。試してみることができます。solution in JSfidllerを作成しました。もし望めばそれをチェックしてください。 HTML:
<form id="example-form" name="my-form">
<label>Phone number:</label><br />
<input id="phone-number" name="phone-number" type="text" maxlength="21" placeholder="+XXXXXXX XXX XXX XXXX" /><br /><br />
<input type="button" value="Submit" />
</form>
スクリプト:
$('#phone-number', '#example-form')
.keydown(function (e) {
var key = e.charCode || e.keyCode || 0;
$phone = $(this);
// Adding blankspace in 9th, 13th and 17th position.
//Change it according to your need
if (key !== 8 && key !== 9) {
if ($phone.val().length === 8) {
$phone.val($phone.val() + ' ');
}
if ($phone.val().length === 12) {
$phone.val($phone.val() + ' ');
}
if ($phone.val().length === 16) {
$phone.val($phone.val() + ' ');
}
}
// Allow numeric number and tab, backspace, delete keys only.
//Change it according to your need
return (key == 8 ||
key == 9 ||
key == 46 ||
(key >= 48 && key <= 57) ||
(key >= 96 && key <= 105));
})
.bind('focus click', function() {
$phone = $(this);
if ($phone.val().length === 0) {
$phone.val('+'); // as your phone number start with '+'
}
else {
var val = $phone.val();
$phone.val('').val(val); // Ensure cursor remains at the end
}
})
.blur(function() {
$phone = $(this);
if ($phone.val() === '+') {
$phone.val(''); // if somebody type '+' it will be vanish
}
});