Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 23.04.2019, 13:40
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,822

<script src="https://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(document).ready(InitPage);
function InitPage() {
   var inputs={}, 
        actionResult = "",
        action = $('#testform').attr('action');

   $('#testform select').each(function(){
      getQuery(this);
   });
   $('#testform select').on('change',function(){
      getQuery(this);
      if(Object.keys(inputs).length == 2) result.innerText = action + actionResult;
   });
   function getQuery(el){
       if($(el).val()!=''){
           inputs[$(el).attr('name')]=$(el).val();
           actionResult =  $.param(inputs)?'?'+$.param(inputs):'';
        }else{
           delete inputs[$(el).attr('name')];
           actionResult = '';
           result.innerText = '';
       }
   }
}
</script>
<form id="testform" action="get.php" method="GET">
    <select name="sel1" >
        <option value="">Выберите</option>
        <option value="1">Пиво</option>
        <option value="2">Спирт</option>
        <option value="3">Лимонад</option>
    </select>
    <select name="sel2" >
        <option value="">Выберите</option>
        <option selected value="3">Колбаска</option>
        <option value="4">Мясо</option>
		<option value="5">Деньги</option>
    </select>  
</form>
<div id="result"></div>
Ответить с цитированием
  #12 (permalink)  
Старый 23.04.2019, 13:41
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,822

laimas,
Наверное, для начала
Ответить с цитированием
  #13 (permalink)  
Старый 23.04.2019, 13:42
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,434

Сообщение от sloneCH
Вроде же должно работать без кнопки
Для чего это все? Форма отправленная методом GET будет передана со всем выбором в ней без всякого JS. Если же это все для Ajax запроса, то в jQuery есть два метода .serialize() и .serializeArray(), то есть ваши обработчики совсем не нужны.
Ответить с цитированием
  #14 (permalink)  
Старый 23.04.2019, 13:43
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,434

Dilettante_Pro, да это какой-то бардак не понятно для чего. )
Ответить с цитированием
  #15 (permalink)  
Старый 23.04.2019, 13:48
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,822

laimas,
Я в примере вообще form хотел убрать - чтобы уменьшить бардак, но потом не стал...
А так просто писал про обработчики селектов. Показать возможности.
Ответить с цитированием
  #16 (permalink)  
Старый 23.04.2019, 14:17
Интересующийся
Отправить личное сообщение для sloneCH Посмотреть профиль Найти все сообщения от sloneCH
 
Регистрация: 16.04.2019
Сообщений: 18

Сообщение от laimas Посмотреть сообщение
Для чего это все?
Наверное не так объяснил. К примеру выбрал я с помощью селектов два значения (они добавились в URL) и эту ссылку отправил Вам. Вы открыли эту ссылку http://site.ru/get2.php?sel1=2&sel2=5 и увидели сохраненные значения, т.е. то, что я выбрал. Мне необходимо было по простому с помощью GET без AJAX и т.п. Ajax это потом.
Ответить с цитированием
  #17 (permalink)  
Старый 23.04.2019, 14:22
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,434

Сообщение от sloneCH
Мне необходимо было по простому с помощью GET без AJAX и т.п. Ajax это потом.
Ну так отправляйте форму естественным способом методом GET и в URL будут имена полей и их значения как параметры запроса. То есть то что вы делаете, это бесполезное занятие, которое и без вас выполнит браузер.
Ответить с цитированием
  #18 (permalink)  
Старый 23.04.2019, 14:32
Интересующийся
Отправить личное сообщение для sloneCH Посмотреть профиль Найти все сообщения от sloneCH
 
Регистрация: 16.04.2019
Сообщений: 18

Так я отправлял без JS, значения подставлялись в URL, но на странице выбор не сохранялся. Сбрасывает на первоначальное. К примеру - если у меня в селекте Черный(1), Белый(2), Красный(3). Я выбираю Красный, то строка добавляет value=3. Но на странице - остается Черный в селекте, а нужно, чтобы отображался в селекте Красный. И один чувак мне сказал - JS тебе в помощь.
Если я не туда иду, то направьте пожалуйста.
Ответить с цитированием
  #19 (permalink)  
Старый 23.04.2019, 14:39
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,434

Сообщение от sloneCH
но на странице выбор не сохранялся
Здрасьте, приехали. А причем тут сохранение? Если форма отправляется не асинхронным методом, то есть страница перегружается, то отметить в списках выбранное ни как не зависит от того как вы там формировали параметры запроса.
Для этого либо на сервере анализируете выбор и возвращая страницу клиенту отмечаете выбранными опции с пришедшими параметрами, либо на клиенте посредством JS анализируете URL текущий, получая параметры запроса и отмечая соответствующие опции.
А вот формирование запроса, как это вы делаете, это никчемное занятие.
Ответить с цитированием
  #20 (permalink)  
Старый 23.04.2019, 14:50
Интересующийся
Отправить личное сообщение для sloneCH Посмотреть профиль Найти все сообщения от sloneCH
 
Регистрация: 16.04.2019
Сообщений: 18

Спасибо за помощь. Много что узнал, хоть даже и это было никчемное занятие.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить содержимое файла и искать в нём контент по селекторам jquery raja Общие вопросы Javascript 2 22.09.2016 17:40
Sencha Cmd: Подключение jQuery khusamov ExtJS 11 13.05.2016 12:58
Асинхронная отправка файла через jQuery InviS jQuery 3 23.04.2013 21:27
Подгрузка информации через DIV с обработкой файла на стороне сервера Azartno jQuery 1 26.05.2012 14:07
Подключение скриптов из внешнего файла feelman Общие вопросы Javascript 19 29.05.2010 20:21