<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> |
laimas,
Наверное, для начала |
Цитата:
|
Dilettante_Pro, да это какой-то бардак не понятно для чего. )
|
laimas,
Я в примере вообще form хотел убрать - чтобы уменьшить бардак, но потом не стал... А так просто писал про обработчики селектов. Показать возможности. |
Цитата:
|
Цитата:
|
Так я отправлял без JS, значения подставлялись в URL, но на странице выбор не сохранялся. Сбрасывает на первоначальное. К примеру - если у меня в селекте Черный(1), Белый(2), Красный(3). Я выбираю Красный, то строка добавляет value=3. Но на странице - остается Черный в селекте, а нужно, чтобы отображался в селекте Красный. И один чувак мне сказал - JS тебе в помощь.
Если я не туда иду, то направьте пожалуйста. |
Цитата:
Для этого либо на сервере анализируете выбор и возвращая страницу клиенту отмечаете выбранными опции с пришедшими параметрами, либо на клиенте посредством JS анализируете URL текущий, получая параметры запроса и отмечая соответствующие опции. А вот формирование запроса, как это вы делаете, это никчемное занятие. |
Спасибо за помощь. Много что узнал, хоть даже и это было никчемное занятие.
|
Часовой пояс GMT +3, время: 19:01. |