Войти

Показать полную графическую версию : [решено] Формирование ссылки href на основе выбора select


lxa85
11-03-2013, 16:42
Здравствуйте.
Есть сформированное поле select:
<fieldset class="fieldset" style="margin:0px">
<legend>Поиск по типу варенья</legend>
<div style="padding:3px">
<select style="width:100%" name="jamtypechoice" size="15" multiple="multiple">
<option value="2" >Яблочное</option>
<option value="3" >Грушевое </option>
<option value="4" >Абрикосовое</option>
<option value="5" >Вырвиглаз</option>
</select>
</div>
</fieldset>

Вопрос: Как мне правильно записать кнопку,
<input name="button" type="button" value="Выполнить"
onclick="jam.php?id=(выбранное значение)"/>
Надо выбранный параметр передать по ссылке на другую страницу.

Некоторые приводят пример обработки:
Через JS. Но в пример приводят функцию alert (), которая мне не нужна;
Есть просто пример ввода/вывода данных (write). Тоже не сильно спасает, тем более что секция <script> </script> похоже не выполняется.
Есть примеры на JQuery, но я не знаю, как "прикрутить" JQuery к северу или куда там? Ну т.е. вообще не знаю.
На php как я понял это не обрабатывается, что собственно верно, т.к. php -- это серверная сторона.
Остается JS, ну и я развожу руками и прошу помощи.

DedAlex
11-03-2013, 18:46
В select добавить id
<select style="width:100%" name="jamtypechoice" id="jamtypechoice" size="15" multiple="multiple">
и кнопка, вот так
<input name="button" type="button" value="Выполнить"
onclick="javascript:window.location.href='jam.php?id='+document.getElementById('jamtypechoice').value"/>

lxa85
26-03-2013, 22:48
А подскажите с таким вопросом:
Хочу, чтобы в таблице, при нажатии кнопки, показывался двойной select
Код написал, вроде бы все хорошо. Но вот в чем проблема:
Как мне зафиксировать ширину select, чтобы он все время был равен половине ширины таблицы?
Изначальна таблица в одну колонку, сделал скрытый (style='display:none') tbody, в каждый из которых поместил select
Пока написал "костыль" со строчкой пробелов
<option disabled="disabled">&_nbsp; &_nbsp; (много) </option> (без "_" разумеется)
В противном случае ширина равна максимальной длине существующей строки, но не более требуемой ширины.
Как мне сделать это правильно?

Habetdin
27-03-2013, 17:37
lxa85, как-то так:
<select style="width (http://htmlbook.ru/css/width): 100%">
Или в css-файл:
select { width: 100% }

lxa85
27-03-2013, 19:14
Habetdin, казалось бы, но(!) ...
Проще наверно будет привести пример.
Прикрепляю учебно-тренировочный файл + файл стилей в zip архиве.
Если расскомментировать строку пробелов (ее сложно пропустить), то все нормально. Если нет, то нет.

Habetdin
27-03-2013, 22:26
lxa85, скачал пример, удалил для второй колонки select с пробелами - вроде все как надо (http://i.imgur.com/zgdcdxZ.png)? Во второй колонке та же ширина, а пункта с пробелами, как в первой, нет... Хм :unsure:
[hr]Update: ширина "ехала" при удалении пробелов из обоих столбцов, потому что к второму <tr> был применен неверный тип display (http://htmlbook.ru/css/display) - block, а правильный для этого элемента - table-row :)
В общем, все было из-за копипастного js-скрипта для скрытия элементов :spy:
Прикрепляю пофикшенный вариант. Для того, чтобы увидеть формы - нажать на ссылку "Двойной поиск" ;)
[hr]Update 2: добавьте еще return false сюда:
onclick="javascript:showElement('dsearch');return false"
Чтобы браузеры вроде Chrome не открывали новую вкладку при клике по ссылке :tomato2:

lxa85
28-03-2013, 00:24
Век живи, век учись ... Habetdin, спасибо. А то я на этом участке прям застрял основательно.




© OSzone.net 2001-2012