Разрядность чисел в input

249
21 февраля 2018, 09:49

Есть input

$html="<input  type='text' size='6' name='valot$name' id='valot$id' class='valot$id' placeholder='{$fieldtitle} от' value='$valsa'/>"

Далее данные уходят через "return $html;"

Как сделать чтобы значения вводимые в input(числа) разделялись на пробелы(разрядность), а в "return $html;" отправлялись уже без пробелов(разрядности). То есть человек вводит в input 10000 ему видно было это как 10 000 а в "return $html;" данные инпутов отправлялись уже без пробелов 10000

Answer 1

Самый простой способ уже был описан на SO пользователем @gyc:

$('#number').on("keyup", function() {
    this.value = this.value.replace(/ /g,"");
    this.value = this.value.replace(/\B(?=(\d{3})+(?!\d))/g, " ");
});

Суть в следующем: просто на каждое нажатие пользователя, с помощью регулярки вставляем пробел в места, где число делится на разряды, и заменяем оригинальное значение инпута.

Если интересуют более сложные способы, то, например тут приведён пример форматирования интупа для конкретной локали.

Что касается PHP-части, то здесь достаточно просто удалить пробелы из числа (и можно ещё на всякий случай привести значение к int):

$string = (int)str_replace(' ', '', $_POST['valot']);
Answer 2

если вы используете AJAX тогда при отправке парсите это поле .replace(/\D/g,'') Если же вы отправляете на сервер обычно тогда парсить придется на сервере, увы в php я плохо разбираюсь

function razr(){ 
  var val = parseFloat(this.value.replace(/\D/g,'')); 
  this.value = val.toLocaleString(); 
} 
 
valot.addEventListener("input",razr);
<input  type='text' size='6' name='valot$name' id='valot' class='valot' placeholder='placeholder'/>

123

READ ALSO
Vba и web парсинг

Vba и web парсинг

Добрый день! Пытаюсь разобраться в парсинге веб страниц с помощью vbaСитуация следующая: есть сайт с полями для ввода

171
Jspoup. Не получается построить запрос

Jspoup. Не получается построить запрос

Пробую авторизоваться на этом сайте : https://servgrpbpmonline

232
вывод подкатегорий в select jquery

вывод подкатегорий в select jquery

здравствуйте, есть категории и подкатегории неограниченных уровней, на данный момент я использую данный код:

154
график c3.js экспорт в excel

график c3.js экспорт в excel

подскажите, можно ли экспортировать график c3 график в формате png в эксель? хотя бы, может кто логику действий обьясните) просто понимания пока...

204