Рhp и javascript
Добрый вечер.
Тут у меня такое дело :html код отображает выпадающий список,вида: <SELECT name="country" id="country"> <OPTION value="Albania"> Албания</OPTION> <OPTION value="Algeria">Алжир </OPTION>... В последствии $country обрабатывается в php,тут проблем нет.Мне нужно чтобы после нажатия на submit и выполнения сценария,страна,которая была выбрана до,оставалась и после выбранной. Единственное что приходит в голову это создать ассоциативный массив вида: $a=array("Albania"=>0,"Algeria"=>1...);Затем выводить через echo"<SCRIPT LANGUAGE='Javascript'> document.newforms.valyuta.options[<? $a[$country] ?>].selected = true; </SCRIPT>"; Просто стран около двухсот,и нагромождать код ассоциативным массивом не очень хочется,есть вообще какой-та другой способ,более рациональный,чтобы в php передать как-то индекс выпадающие списка,а не только название страны? |
А почему не добавить нужному option атрибут selected="selected" на сервере?
|
Я же не знаю какую страну выберет пользователь,каждый раз он может выбрать разную,после этого я обрабатываю эту страну,мне просто нужно показывать ему его последний выбор.
|
Вы же предложили решение:
Цитата:
|
Скажем так у меня скрипт имеет следующий вид сначала идёт html код,который отображает элементы формы,выпадающие списки,текстовое поле,submit и т.д.Т.к. по замыслу они все время должны находиться на странице и до нажатия на кнопку и после,то я не стал их выводить через php.Php часть кода начинается позже,в зависимости от того как будут заполнены поля,php у меня обрабатывает введенные данные и выдаёт соответствующий результат.Просто после нажатию на кнопку хотелось бы сохранять данные ,которые он ввёл или выбрал на форме.Поэтому я использую js,грубо говоря,'передаю' данные из php в js.
|
faiq,
когда пользователь отправляет форму на сайт, он передает данные серверу, в том числе и id выбранного языка. Все, что Вам нужно — засунуть эти данные в сессию и, как сказал Octane, при выводе списка стран у нужной задать selected="selected". Тут, действительно, яваскрипту делать нечего. |
Всем спасибо за помощь.
|
Часовой пояс GMT +3, время: 01:32. |