Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 12.11.2019, 09:20
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

firsmember, вы задали очень хороший вопрос.

Сообщение от firsmember
Хочется получить введенные значения "на лету" и при нажатии на кнопку, сформировать собственно адрес по типу указанного выше и переадресовать человека на этой же странице по сформированному адресу
Форма именно так и работает, если вы не укажете у <form> атрибут action. (Т. е. произойдёт переход на эту же страницу, но с дополнительными параметрами)

Сообщение от firsmember
Очень важно, чтобы выбранные ранее данные после загрузки страницы снова ввелись в эту форму...
Вам нужно пройтись циклом по параметрам и вписать каждое значение в соответствующее поле. Я приведу пример ниже.

Сообщение от firsmember
name='age_min' id='age_min' class='age_min'
Можно указать только name, именно оно определяет имя поля в форме, которое включается в запрос. Если нужно в стилях, то элемент определяется как [name=age_min]

Сообщение от firsmember
<option value="150">150</option>
Можно не указывать атрибут value, если значение поля и надпись в раскрывающемся списке одинаковы. Т. е. достаточно <option>150</option>

Сообщение от firsmember
type='text'
Можно не указывать, так как по умолчанию используется именно текст.

Сообщение от firsmember
Ума не приложу, как реализовать
Вот пример с учётом всего вышенаписанного... (Можно проверить в отдельной вкладке — https://charm-launch.glitch.me/form.html)
<form method="get" id="search-form">
	<input name="age_min">
	<input name="age_max">
	<select name="height_min">
		<option>150</option>
		<option>155</option>
		<option>160</option>
		<option>165</option>
		<option>170</option>
	</select>
	<select name="height_max">
		<option>150</option>
		<option>155</option>
		<option>160</option>
		<option>165</option>
		<option>170</option>
	</select>
	<select name="lang">
		<option>RUS</option>
		<option>USA</option>
	</select>
	<select name="country_40">
		<option>RUS</option>
		<option>USA</option>
	</select>
	<input name="keyword">
	<select name="per_page">
		<option>1</option>
		<option>4</option>
		<option>8</option>
		<option>16</option>
		<option>20</option>
		<option>40</option>
	</select>
	<input type="hidden" name="um_search" value="1">
	<button>Искать</button>
</form>
<script>
	const searchForm = document.getElementById("search-form");
	for(const [key, value] of new URL(location).searchParams) {
		const control = searchForm.elements.namedItem(key);
		if(!control) continue;
		control.value = value;
	}
</script>


Сообщение от firsmember
Просто вы меня лечите уже часа 4 наверное если не больше в этом направлении, а помочь вам 5 минут делов
Очевидно он не знает, как это сделать, поскольку даже приблизительно не было ответа касательно вашего вопроса о заполнении формы данными, вместо этого сначала идут вещи, о которых новичкам как-раз таки нужно рассказывать, а не задавать им вопросы, а затем оскорбления.

Последний раз редактировалось Malleys, 12.11.2019 в 13:29. Причина: Исправил форму глагола прошедшего времени.
Ответить с цитированием
  #22 (permalink)  
Старый 12.11.2019, 11:39
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Malleys, бабушке сво
Сообщение от Malleys
Строка с параметрами содержит их в определённом порядке, о какой ассоциации может идти речь?
Что будем дурочку включать?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно получить асинхронные данные? gsdev99 AJAX и COMET 1 25.06.2019 15:30
Получить данные из JSON. triest Общие вопросы Javascript 3 04.11.2016 17:08
Как правильно получить введенные данные в поле? buket jQuery 11 11.04.2010 19:59
Как получить текущую страницу браузера psychodrake Общие вопросы Javascript 12 19.09.2008 00:28
Возможно ли получить данные из файла на сервере? sdff Общие вопросы Javascript 11 19.07.2008 20:48