Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.11.2019, 10:53
Кандидат Javascript-наук
Отправить личное сообщение для firsmember Посмотреть профиль Найти все сообщения от firsmember
 
Регистрация: 08.11.2019
Сообщений: 113

Получить данные из формы и переадресовать на страницу
Доброго времени маги JS , снова я с нубскими вопросами...
Есть форма которая не работает так как мне нужно, а нужно срочно, потому решено сделать костылем:
<form method="get" action="">
 <input type='text' name='age_min' id='age_min' class='age_min'>
 <input type='text' name='age_max' id='age_max' class='age_max'>
 <select name="height_min" id="height_min" >
   <option value="150">150</option>
   <option value="155">155</option>
   <option value="160">160</option>
   <option value="165">165</option>
   <option value="170">170</option>
</select> 
<select name="height_max" id="height_max" >
   <option value="150">150</option>
   <option value="155">155</option>
   <option value="160">160</option>
   <option value="165">165</option>
   <option value="170">170</option>
</select>
<select name="lang" id="lang" >
   <option value="RUS">RUS</option>
   <option value="USA">USA</option>
</select>
<select name="country_40" id="country_40" >
   <option value="RUS1">RUS</option>
   <option value="USA1">USA</option>
</select>
<input type='text' name='keyword' id='keyword' class='keyword'>
<select name="per_page" id="per_page" >
   <option value="1">1</option>
   <option value="4">4</option>
   <option value="8">8</option>
   <option value="16">16</option>
   <option value="20">20</option>
   <option value="40">40</option>
</select>
<button>Искать</button>
</form>


на выходе получаю такой адрес:
http://site.com/ru/search?age_min=18...16&um_search=1

&um_search=1 - дописывается всегда в конце, так и должно быть, так и нужно...

Хочется получить введенные значения "на лету" и при нажатии на кнопку, сформировать собственно адрес по типу указанного выше и переадресовать человека на этой же странице по сформированному адресу, Очень важно, чтобы выбранные ранее данные после загрузки страницы снова ввелись в эту форму... что бы если например человек решит изменить один из пунктов в адресе сформировались все те же, что были и а те которые он изменил изменились....

Ума не приложу, как реализовать , help me pleace

Последний раз редактировалось firsmember, 11.11.2019 в 12:50.
Ответить с цитированием
  #2 (permalink)  
Старый 11.11.2019, 12:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

firsmember,

<form method="get" action="">
 <input type="hidden" name='um_search' value='1'>
Ответить с цитированием
  #3 (permalink)  
Старый 11.11.2019, 12:19
Кандидат Javascript-наук
Отправить личное сообщение для firsmember Посмотреть профиль Найти все сообщения от firsmember
 
Регистрация: 08.11.2019
Сообщений: 113

Спасибо, это понял, @laimas разъяснил

Последний раз редактировалось firsmember, 11.11.2019 в 13:49.
Ответить с цитированием
  #4 (permalink)  
Старый 11.11.2019, 13:34
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Атрибут id, это уникальный идентификатор, грубо говоря точечный адрес элемента. Это поиск элемента по его индивидуальному признаку, которым обладает только он. Этот параметр элемента не является обязательным, и если он не используется, то прописывание его всем элементам будет означать бесполезную передачу мусора на клиента.

При передаче формы на сервер, сервер получит ассоциативный массив (в случае если на сервере такой язык как РНР) параметров, в котором ключи будут в том порядке, в котором расположены элементы формы имеющие имена равные этим параметрам. Какой порядок ключей в ассоциативном массиве, для сервера глубоко наплевать, на то она и ассоциация.

Если нужно чтобы ключ um_search был в конце и передавал значение 1, то нужно скрытое поле, которое описал рони, поместить в конец формы. Это все что нужно, а если "Это не то, что нужно...", то не понятно что вообще нужно, о чем я и упомянул в другой теме.

Последний раз редактировалось laimas, 11.11.2019 в 13:36.
Ответить с цитированием
  #5 (permalink)  
Старый 11.11.2019, 13:49
Кандидат Javascript-наук
Отправить личное сообщение для firsmember Посмотреть профиль Найти все сообщения от firsmember
 
Регистрация: 08.11.2019
Сообщений: 113

Сообщение от laimas Посмотреть сообщение
Если нужно чтобы ключ um_search был в конце и передавал значение 1, то нужно скрытое поле, которое описал рони, поместить в конец формы. Это все что нужно, а если "Это не то, что нужно...", то не понятно что вообще нужно, о чем я и упомянул в другой теме.
Точно, я не понял его просто, о чем он, все верно, ок, с этим ясно..
А как реализовать на js все это? Допустим url я смогу сформировать, но как сделать все остальное, особенно после перехода по сформированному url заполнить форму теми же данными...
Ответить с цитированием
  #6 (permalink)  
Старый 11.11.2019, 14:28
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от firsmember
Допустим url я смогу сформировать
Зачем его формировать, если это автоматически сделает бразуер при отправлении формы?

Сообщение от firsmember
после перехода по сформированному url заполнить форму теми же данными
Вы форму отправляете серверу или на деревню дедушке? А если серверу и он принимает ее, то может ли он вернуть ее клиенту с его выбором?
Ответить с цитированием
  #7 (permalink)  
Старый 11.11.2019, 14:55
Кандидат Javascript-наук
Отправить личное сообщение для firsmember Посмотреть профиль Найти все сообщения от firsmember
 
Регистрация: 08.11.2019
Сообщений: 113

Я выше объяснил, это своего рода костыль, сайт будет переписываться т.к. не работает должным образом, сейчас нужно обойтись грубо говоря малой кровью, возможно то что я описал выше реализовать на js все же?
Ответить с цитированием
  #8 (permalink)  
Старый 11.11.2019, 15:07
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от firsmember
возможно то что я описал выше реализовать на js все же?
Можно, но зачем тогда нужна форма, если она сама по себе? Сервер не просто должен принять форму, но и обязан проверить ее данные. Если при проверки формы будут ошибки, как поступить? Если не будет как поступить?

Каждое частное из общей задачи может влиять на сценарий, поэтому не костылями надо заниматься, а думать от общего к частному, из которого и будет видно как поступить, и где выгоднее это сделать.
Ответить с цитированием
  #9 (permalink)  
Старый 11.11.2019, 15:18
Кандидат Javascript-наук
Отправить личное сообщение для firsmember Посмотреть профиль Найти все сообщения от firsmember
 
Регистрация: 08.11.2019
Сообщений: 113

Это форма которая фильтрует объекты... (фильтр в общем) Поля там именно те, что я отписал, при переходе по сформированной ссылке сервер все сделает. Так, что то, что я прошу, это то что мне нужно!
Ответить с цитированием
  #10 (permalink)  
Старый 11.11.2019, 15:20
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от firsmember
Поля там именно те, что я отписал
Уверены, что ваш сервер будет всегда получать "ваши поля"?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно получить асинхронные данные? 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