Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: linker от 05 Июля 2005, 16:34:35

Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 05 Июля 2005, 16:34:35
Как можно сделать, выбираю из одного комбобокса блоктруется другой?
Название: Блокировать один елемент при выборе другого(select)
Отправлено: commander от 05 Июля 2005, 16:53:27
linker
учимся задавать вопросы!
Название: Блокировать один елемент при выборе другого(select)
Отправлено: CGVictor от 05 Июля 2005, 17:02:15
linker
Вешаешь событие для первого комбобокса на onChange, в событии второй либо скрываешь, либо disable - по вкусу.

commander
Зачем же так категорично?..
Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 05 Июля 2005, 17:02:21
Нашел в факе, но тут же ещё проблема у елементов на onchange
form.submit висит, беру из этих селектов значения составляю sql запрос, так вот если
1) выбираю из combobox1 значение combobox2 блокируется
2) а если перед этим в combobox2 было выбрано значение, то при блокировке все нормально а вот в адресной строке остается старое значение combobox2

Тоесть мне надо если во втором что-то было выбрано и ипередано в адресную строку, то при выборе из первого это значение сбрасывалось.
Название: Блокировать один елемент при выборе другого(select)
Отправлено: CGVictor от 05 Июля 2005, 17:07:20
linker
Цитировать
linker:
в адресной строке остается

Что это значит???

Или ты хочешь сказать, что после отсылки данных на сервер у тебя какое-то значение осталось? Так оно и останется, ты ж на его основе страницу генерировал.

Или не так?
Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 05 Июля 2005, 17:13:09
Согласен

Но при выборе из первого комбобокса я меняю значение второго(или disable), так вот оно как раз и не отправляется серверу а остается предыдущее.

Если елемент disable то значение ведь не передается так,мне и надо чтоб не передавалось а вместо этого остается старый параметр
Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 05 Июля 2005, 17:18:17
Или другими словами можно ли как-нибудь при самите одного элемента делать сабмит  другого

Вообще возможно такое?:confused:
Название: Блокировать один елемент при выборе другого(select)
Отправлено: CGVictor от 05 Июля 2005, 21:00:16
linker
Цитировать
linker:
делать сабмит другого

Объединить их в форму.
Ты пойми, "сабмитится" не элемент. На сервер отсылается содержимое формы, т.е. значения всех ее контролов. И, чтобы потом "установить эти значения после отправки" сервер должен заново отослать клиенту разметку формы, с элементами.
Именно вот на этом этапе нужно выставлять значения элементов. Т.е., на сервере.
Название: Блокировать один елемент при выборе другого(select)
Отправлено: virka от 05 Июля 2005, 23:47:15
Без бутылки не поймешь :)
На onChange вместе с блокировкой ставишь combobox2.value="" или чего там у Вас стоит по умолчанию. Или Вы хотите, чтобы значение не отсылалось совсем? Либо серверная обработка, либо сценарием уничтожать "лишний" select.
Название: Блокировать один елемент при выборе другого(select)
Отправлено: virka от 06 Июля 2005, 00:12:24
Прошу прощения, не обратил внимания, что речь идет про select.
Пока не закидали камнями, спешу исправить ошибку.
Не value, конечно, combobox2.options[индекс по умолчанию].selected.
Кстати, посмотрел сейчас про формы, должно отсылатся только при readonly, при disabled отсылаться не должно.
Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 06 Июля 2005, 09:17:40
Цитировать
Объединить их в форму.

Уже объеденены
Цитировать

Ты пойми, "сабмитится" не элемент. На сервер отсылается содержимое формы, т.е. значения всех ее контролов. И, чтобы потом "установить эти значения после отправки" сервер должен заново отослать клиенту разметку формы, с элементами.

Понимаю, тоесть надо скриптом(php допустим ) прибивать значение этого параметра. Потому как если в комбобоксе выбрали значение то во втором оно еще осталось старым
Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 06 Июля 2005, 09:19:20
Цитировать
Кстати, посмотрел сейчас про формы, должно отсылатся только при readonly, при disabled отсылаться не должно.


См. выше я про это уже сказал.
Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 06 Июля 2005, 10:17:27
Я сделал, правда через жо.... , перед формсабмит делаю disable зависимых елементов и параметры не передаются. Больше ничего пока в голову не приходит.
Название: Блокировать один елемент при выборе другого(select)
Отправлено: CGVictor от 06 Июля 2005, 12:03:30
linker
Не, ну если так принципиально, чтобы юзер не видел в GET-запросе второй параметр - то да, только так и получится.
Я бы не геморроился и передавал всё. Причем POST-ом. А на сервере уже разбирался.
Название: Блокировать один елемент при выборе другого(select)
Отправлено: linker от 06 Июля 2005, 12:10:44
Спасибо, я обязаьелбно попробую, но пока для меня идеален мой вариант, да вообще у меня задачка без пол литра не разберешь, а чтобы кто-нибудь помочь смог надо объяснить, а ведь хрен объяснишь что там да как, как доделаю кину ссылку:)
Название: Блокировать один елемент при выборе другого(select)
Отправлено: commander от 06 Июля 2005, 14:04:09
тема закрыта... ибо уже флэйм...