Цитата:
|
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<input value="+7(___)___-____">
<script>
window.addEventListener("DOMContentLoaded", function() {
function setCursorPosition(pos, elem) {
elem.focus();
if (elem.setSelectionRange) elem.setSelectionRange(pos, pos);
else if (elem.createTextRange) {
var range = elem.createTextRange();
range.collapse(true);
range.moveEnd("character", pos);
range.moveStart("character", pos);
range.select()
}
}
function mask(event) {
var matrix = this.defaultValue,
i = 0,
def = matrix.replace(/\D/g, ""),
val = this.value.replace(/\D/g, "");
def.length >= val.length && (val = def);
matrix = matrix.replace(/[_\d]/g, function(a) {
return val.charAt(i++) || "_"
});
this.value = matrix;
i = matrix.lastIndexOf(val.substr(-1));
i < matrix.length && matrix != this.defaultValue ? i++ : i = matrix.indexOf("_");
setCursorPosition(i, this)
}
var input = document.querySelector("input");
input.addEventListener("input", mask, false)
});
</script>
</body>
</html>
|
romveld,
что нужно сделать, чтоб изменить +7? |
https://prnt.sc/11g6c1x нужно поставить курсор в самое начало инпута и начать печатать, он изменится.
|
romveld,
ок, понятно. |
Добрый день. Скрипт отличный - спасибо. Но подскажите, как сделать так, чтобы в модальном окне также была проверка.
|
Цитата:
|
Отлично... теперь бы понять как это)
|
Alex_medik,
[html run] ... минимальный код страницы с вашей проблемой [/html] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
думаю в эту функцию нужно вставить
qfstartModalform: function(d) {
var box = QuickForm.qfstartoverlay(d.class);
$.ajax({
type: 'POST',
url: d.url,
data: {
option: "com_qf3",
task: "ajax.qfmodal",
id: d.project
},
success: function(html) {
box.append(html);
QuickForm.verticallycentr(box, true);
var form = $('form', box)[0];
QuickForm.initiate(form);
}
});
|
| Часовой пояс GMT +3, время: 22:45. |