Battle Forum

Battle Forum (http://battlefox.rooty.ru/index.php)
-   Web-программирование / Сайтостроение (http://battlefox.rooty.ru/forumdisplay.php?f=110)
-   -   Выбрать элемент select (http://battlefox.rooty.ru/showthread.php?t=13085)

MorgaN 17.11.2009 16:58

Выбрать элемент select
 
Здравствуйте!
Вообщем есть такая формочка:
Код:

<select name="id"> 
 <option value="0">Все страны</option>
 <option value="1">Австралия</option>
 <option value="2">Австрия</option>
 <option value="3">Азербайджан</option>
</select>

Нужно добавить кусочек кода, например на JS, так чтоб код сразу выбирал определённое значение. Т.е. чтоб не было стандартно выбрано "Все страны".
Помогите плиз, как это сделать?

bmp 17.11.2009 18:08

Что-то такое подойдет?
Код HTML:

<select name="id"> 
 <option value="0">Все страны</option>
 <option value="1">Австралия</option>
 <option value="2" selected>Австрия</option>
 <option value="3">Азербайджан</option>
</select>


MorgaN 17.11.2009 18:30

Цитата:

Сообщение от bmp (Сообщение 411995)
Что-то такое подойдет?

Не, нужно чтоб отдельно от формы это выполнялось.

NOboDy 18.11.2009 01:07

Код HTML:

<select name="id">
<option value="0" id="select_0">Все страны</option>
<option value="1" id="select_1">Австралия</option>
<option value="2" id="select_2">Австрия</option>
<option value="3" id="select_3">Азербайджан</option>
</select>
<script>
el = document.getElementById("select_3");
if (el) el.selected = true;
 else alert("Shit happens.");
</script>

Может так?

MorgaN 19.11.2009 13:30

А вот ещё проблемку не могу решить:
форма, в ней
Код:

<select name="id">
<option value="0">Все страны</option>
<option value="1">Австралия</option>
<option value="2">Австрия</option>
<option value="3">Азербайджан</option>
</select>

нажимаю на кнопку submit и форма методом пост отправляет данные, но из селекта приходит не value, а колличество элементов.
Если сделать в форме так
Код:

<select name="id">
<option value="0">Все страны</option>
<option value="1">Австралия</option>
<option value="2" selected>Австрия</option>
<option value="3">Азербайджан</option>
</select>

То всё норм отправляется. Нужно чтоб отправлялось value значения которого выберет пользователь...

Ringo 20.11.2009 08:37

В чём смысл наличия скрипта? может таки делать всё по принципу KISS?

MorgaN 20.11.2009 14:16

Цитата:

Сообщение от Ringo (Сообщение 412649)
может таки делать всё по принципу KISS?

Есть предложения?

Нужно просто чтобы пользователь выбрал из списка страну, затем скрипт залез в бд и ковырнул от туда города в этой стране, затем пользователь выбрал город, и нужно передать их value другому скрипту, но методом пост...

NOboDy 20.11.2009 18:42

Цитата:

Сообщение от morgan (Сообщение 412714)
Есть предложения?

Если ты хочешь это сделать без обновления страницы - то тока ajax.
Если нет, все просто. Сперва отдаешь пользователю форму с кнопкой
отправки и одим select, в котором выбирается страна. Поле первой отправки
к первому select добавляешь второй, с городами, в соответствии с ввернутым
значением первого. Первый select выставляешь в нужное положение на
стороне сервера атрибутом selected.

Ringo 20.11.2009 22:20

Цитата:

Сообщение от morgan (Сообщение 412714)
Нужно просто чтобы пользователь выбрал из списка страну, затем скрипт залез в бд и ковырнул от туда города в этой стране, затем пользователь выбрал город, и нужно передать их value другому скрипту, но методом пост...

Таки одним жвава-скриптом ты тут не обойдёшся, потому как лазить в базу данных они не могут, ибо они клиентские. Далее, строить структуру
<option>
<select />
</option>
для каждого города ты тоже джавой будешь? :)
А вобще, по поводу KISS, я таки был прав - просто сделай поле ввода для города, ибо всяких мухосрансков в Рашке - пруд пруди. А за её пределами и того более.

MorgaN 21.11.2009 02:01

Цитата:

Сообщение от Ringo (Сообщение 412817)
просто сделай поле ввода для города

В том то и дело что никак. Мне нужно знать value чтоб потом исходя из данных делать выводы.
Ладно, постараюсь сделать на пхп какоенибудь шаманство.
Эх... опять колдовать...

Добавлено через 3 минуты
Кстати так и не понял, т.е. значение селекта методом пост не передаётся? Получается оно передаётся только если указано
<option value="2" selected>Австрия</option>

Ringo 21.11.2009 23:53

morgan, у Вас в форме метод верный хоть выбран? по идее должно передаваться и передаётся, помню точно. А про Скрипт, скопипастил на фри сервер выот это:

Цитата:

Сообщение от NOboDy (Сообщение 412086)
<select name="id">
<option value="0" id="select_0">Все страны</option>
<option value="1" id="select_1">Австралия</option>
<option value="2" id="select_2">Австрия</option>
<option value="3" id="select_3">Азербайджан</option>
</select>
<script>
el = document.getElementById("select_3");
if (el) el.selected = true;
else alert("Shit happens.");
</script>

Таки нормально работает, для наглядности содержимое формы передавал вникуда ГЕТом. пруфлинк


Текущее время: 13:30. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot