Работа с input , вставка символа и пробелы

218
13 октября 2017, 18:15

Как сделать так чтобы, если в числе больше двух нулей, то оно отделялось пробелами то есть: 100 < 2 , 1 000 > 2, 1 000 000 > 2 и т.д. ?

И как-то можно проще оформить вставку символа рубля в конец input ? Есть такое решение, но мне кажется оно немного неверно, т.к. удаляется тяжело значение.

function addRub (val) { 
	return val + " ₽"; 
} 
 
function removeRub (val) { 
	val = val.replace(" ₽", ""); 
    val = val.replace("₽", ""); 
    val = val.replace(" ", ""); 
    return val; 
} 
 
$(".test").on("input", function () { 
	var $this = $(this); 
    var val = $this.prop("value"); 
    var newVal = removeRub(val); 
    newVal = addRub(newVal); 
    $this.prop("value", newVal); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<input class="test" value='&#8381;'>

Answer 1

test.onkeypress = event => { 
  // Control buttons 
  if (event.key.length > 1) return true; 
  test.value = (test.value+event.key) 
    .replace(/\D/g, '') 
    .replace(/(\d)(?=(\d{3})+([^\d]|$))/g, '$1 ') 
    +'₽'; 
  event.preventDefault(); 
}
<input id="test" value='&#8381;'>

READ ALSO
OWL carousel autoplay по загрузке блока

OWL carousel autoplay по загрузке блока

Добрый день, есть скрипт карусельки, не могу додуматься как можно запустить автоплей, при попадании блока карусели на экран, а не при загрузке...

282
отрицание в regex

отрицание в regex

этим патерном \bif\((+)\)\{([\s\S]+?)} я выбираю все блоки if http://joxi

189
Сравнения значений масивов

Сравнения значений масивов

У нас есть несколько div с класом iteam, дальше нам нужно взять ключ у всех елементов iteam , после из базы берем значения id, после нам нужно сравнить...

261
Laravel, get_declared_classes() не видит ни одну модель кроме User

Laravel, get_declared_classes() не видит ни одну модель кроме User

Все модели создавались артисаномПри вызове get_declared_classes() Не получаю все модели, только модель User

200