Имеется поле:
<input id="box-1-form-input" type="text" name="box-1-form-input" placeholder="http://www." value="http://www." class="form-control">
Нужно сделать, что бы оно всегда по умолчанию содержало "http://www.". Для себя определил 2 варианта:
Использование масочной библиотеки по типу (https://github.com/RobinHerbots/Inputmask)
Ручная фильтрация через regexp
В первом варианте сталкиваюсь с проблемой, так как маске надо указывать количество символов и в итоге в поле ввода получается "http://www.___________________".
Во втором варианте не смог определится как работать с входными данными, не затрагивая собственную маску (убирать дублирующиеся "http" и "www"). Для примера набросал такой код:
$("#box-1-form-input").on('change keyup input', function() {
var input = $(this);
if(~input.val().indexOf("http://www.")) {
// regexp
}
else {
input.val("http://www.");
}
});
Что посоветуете?
Ну если я правильно понял, то можно вот так сделать -
class Input {
constructor( input, prefix = '' ){
this.prefix = prefix;
this.prefixLength = prefix.length;
this.input = input;
this.input.value = this.prefix;
this.inputHandler = this.input_inputHandler.bind(this);
this.input.addEventListener('input', this.inputHandler);
}
input_inputHandler( { target } ){
let { value } = target;
if( value.length < this.prefixLength ){
target.value = this.prefix;
}
}
}
let input = new Input(
document.body.querySelector('input'),
'https://www.'
);
<input type="text">
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Делаю мега-мега менюЗаметил что при переходе з главного пунка меню к последнему дочернему по диагонали блок пропадает
Я хочу добиться эффекта, что при нажатии на элемент icon-menu, каждый пункт li в отдельности последовательно плавно менял совою прозрачность и выезжал...