Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.03.2016, 23:38
Кандидат Javascript-наук
Отправить личное сообщение для sergofedor06 Посмотреть профиль Найти все сообщения от sergofedor06
 
Регистрация: 10.11.2015
Сообщений: 131

Помогите с удалением ненужных символов
Есть вот такой пхп код и форма поиска
в которую человек вводит искомое слово

после чего нажимает поиск

и запрос из формы вида
domen.com/index.php?num=44444444444
отображается в браузере!

у меня такая задача мне нужен java скрипт
который будет удалять все буквы из поисковой формы и оставлять в
domen.com/index.php?num=44444444444
только цифры, короче говоря нужно чтобы скрипт пропускал только цифры и некоторые символы, вот они
1234567890()-
а все остальные буквы и символы которые будут в поисковом запросе нужно чтобы удалялись

если поисковый запрос будет вида
fdfg56346634dfg456565
то после обработки скрипта должно остатся только
56346634456565


<?php
$num = $_GET['num']; // поиск номера!
?>

<form method="get" action="index.php">
<input name="num" type="search"></input>
<button type="submit" class="search-button">Искать</button>
</form>



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

т.е сможет вписать в поисковое поле
только
1234567890()-
любую комбинацию из этих символов, остальные не сможет впечатать в поисковое поле... как-то так, спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 26.03.2016, 01:23
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

Можешь использовать атрибут pattern.

<form method="get" action="index.php">
  <input name="num" type="search" pattern="[\d()-]">
  <button type="submit" class="search-button">Искать</button>
</form>

<script>
  var inpElem = document.forms[0].elements[0];

  inpElem.oninput = function() {
    this.value = this.value.replace(/[^\d()-]/g, '');
  };
</script>
Ответить с цитированием
  #3 (permalink)  
Старый 26.03.2016, 23:20
Кандидат Javascript-наук
Отправить личное сообщение для sergofedor06 Посмотреть профиль Найти все сообщения от sergofedor06
 
Регистрация: 10.11.2015
Сообщений: 131

Decode
Спасибо вам, что помогли.
Ответить с цитированием
  #4 (permalink)  
Старый 27.03.2016, 10:58
Кандидат Javascript-наук
Отправить личное сообщение для sergofedor06 Посмотреть профиль Найти все сообщения от sergofedor06
 
Регистрация: 10.11.2015
Сообщений: 131

Сообщение от Decode Посмотреть сообщение
Можешь использовать атрибут pattern.

<form method="get" action="index.php">
  <input name="num" type="search" pattern="[\d()-]">
  <button type="submit" class="search-button">Искать</button>
</form>

<script>
  var inpElem = document.forms[0].elements[0];

  inpElem.oninput = function() {
    this.value = this.value.replace(/[^\d()-]/g, '');
  };
</script>



скажите в чем проблема, вставил ваш скрипт он действительно
не дает возможность ввести другие символы кроме

1234567890()-

но когда я нажимаю на кнопку искать!
то вылазит сообщение (Введите данные в указанном формате.)
но ведь я данные ввел в указанном формате в поисковое поле

а вылазит это сообщение, почему что не так?
Ответить с цитированием
  #5 (permalink)  
Старый 27.03.2016, 12:17
Кандидат Javascript-наук
Отправить личное сообщение для sergofedor06 Посмотреть профиль Найти все сообщения от sergofedor06
 
Регистрация: 10.11.2015
Сообщений: 131

Подскажите пожалуйста вот такое
у меня вот такой код ява код

function openprompt(){	
var html='<form method="get" action="index.php"><input name="num" type="search" class="search-input"></input><button type="submit" class="search-button">Искать</button></form>';
prompt.show({info:html});
}




внутри переменной
var html

есть поисковая форма, так как мне прикрутить вашу проверку
которая будет отсекать ненужные символы в поисковом поле

<script>
  var inpElem = document.forms[0].elements[0];

  inpElem.oninput = function() {
    this.value = this.value.replace(/[^\d()-]/g, '');
  };
</script>



как мне ваш скрипт интегрировать в мой?
Ответить с цитированием
  #6 (permalink)  
Старый 28.03.2016, 20:11
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

sergofedor06, вот так попробуй:
document.oninput = function(e) {
	if ( e.target.classList.contains('search-input') ) {
		e.target.value = e.target.value.replace(/[^\d()-]/g, '');
	}
};
Ответить с цитированием
  #7 (permalink)  
Старый 29.03.2016, 10:31
Кандидат Javascript-наук
Отправить личное сообщение для sergofedor06 Посмотреть профиль Найти все сообщения от sergofedor06
 
Регистрация: 10.11.2015
Сообщений: 131

спасибо уже сам решил!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Список SELECT с фильтрацией. помогите! Pedro Garciya Lopez jQuery 6 20.03.2014 15:26
Контроль количества вводимых в форму символов y0uix Events/DOM/Window 4 22.10.2013 19:12
помогите с колличеством символов в input ale19 Общие вопросы Javascript 4 20.04.2011 21:24
Помогите с валидацией формы dimaan777 jQuery 1 13.02.2011 22:07
Помогите! Многоуровневые вкладки! sergeeeeee Элементы интерфейса 2 02.08.2010 23:50