Внимание! Данный раздел закрыт и доступен только для чтения в связи с запуском нового проекта uВопросы, на котором Вы можете найти ответ или задать любой интересующий вопрос по системе uCoz. Задавайте вопросы, ищите ответы и помогайте найти ответы другим пользователям системы! Получайте баллы и открывайте новые достижения. Подробнее в блоге...
Архив - только для чтения |
Сообщество uCoz Модули uCoz Контент-модули Доска объявлений Как сделать выпадающий список при добавлении материала (Как сделать выпадающий список к примеру из OTHER 1-5) |
Как сделать выпадающий список при добавлении материала |
|
Да правильно есть готовый код но не могу понять как реализовать!
Добавлено (18 Май 2013, 00:12:31) |
PC-MASTER,
в страницу добавления и редактирования материалов, после $BODY$ ставь это Код <script language="JavaScript"> $("#bdF13").replaceWith("<select name='other1'><option value='0'>Выберите регион</option><option value='1'>Регион 1</option><option value='2'>Регион 2</option><option value='3'>Регион 3</option></select>"); $("#bdF14").replaceWith("<select name='other2'><option value='0'>Выберите страну</option><option value='1'>Страна 1</option><option value='2'>Страна 2</option><option value='3'>Страна 3</option></select>"); </script> Ну там в коде уже сами допишите нужное количество стран и регионов и их названия. В коде не использовать двойные скобки " только одинарные. |
Rad_van_Cor, Спасибо всё работает а не скажешь где можно узнать все коды #bdF13 допустип чтобы еще сделать выпадающий список из $AUTHOR_SITE$ и так же других полей???И не знаешь почему при выборе региона или страны на странице материалы отображаються только цыфры в зависимости что выберишь.
Спойлер Код <script type="text/javascript" src="http://auto09.3dn.ru/Skripti-/region_gorod/script.js"></script> <script type="text/javascript"><!--window.onload = function() {dynamicSelect("region", "gorod");}//--></script> <form action="#" method="post"> <select name="filter1" id="region" onchange="sfltrs(this.options[this.selectedIndex].value,1)"> <option style="color: #AAAAAA" value="0">Выберите Регион:</option> <option value="1">01 Республика Адыгея</option> <option value="2">02 Республика Башкирия</option> <option value="3">03 Бурятская республика</option> <option value="4">04 Республика Алтай</option> <option value="5">05 Республика Дагестан</option> <option value="6">06 Ингушская республика</option> <option value="7">07 Кабардино-Балкарская республика</option> <option value="8">08 Республика Калмыкия</option> <option value="9">09 Карачаево-Черкесская республика</option> </select> <select name="other4" id="gorod"> <option style="color: #AAAAAA" class="0" value="Выберите Город:">Выберите Город:</option> <option class="9" value="Чекресск">Чекресск</option> <option class="8" value="0">0</option> <option class="7" value="0">0</option> </select></form> Подсажишь как совместить это с other 1-2, у меня получаеться при выборе в $FILTER1_VALUE$ региона будет менять город всё это получаеться в онлайн-игры но как это совместить в доске объявлений!Заранее Спасибо! Сообщение отредактировал PC-MASTER - Суббота, 18 Май 2013, 09:38:18
|
Цитата (PC-MASTER) а не скажешь где можно узнать все коды #bdF13 допустип чтобы еще сделать выпадающий список из $AUTHOR_SITE$ и так же других полей??? Смотреть через исходный код id полей. Цитата (PC-MASTER) И не знаешь почему при выборе региона или страны на странице материалы отображаються только цыфры в зависимости что выберишь. Потому, что в сэлекте в поле value стоят цифры. А на сервер отправляется именно то, что указано в value. <option value="1">01 Республика Адыгея</option> <option value="2">02 Республика Башкирия</option> <option value="3">03 Бурятская республика</option> Тут два варианта, либо цифры менять сразу на слова, что бы было так: <option value="01 Республика Адыгея">01 Республика Адыгея</option> <option value="02 Республика Башкирия">02 Республика Башкирия</option> <option value="03 Бурятская республика">03 Бурятская республика</option> Или оставлять с цифрами, а на странице материала (где должны выводится республики и регионы) задаём условие. <?if($OTHER1$='1')?>01 Республика Адыгея<?endif?> <?if($OTHER1$='2')?>02 Республика Башкирия<?endif?> <?if($OTHER1$='3')?>03 Бурятская республика<?endif?> Ну или так, что бы цифры перед текстом не выводились, я думаю на странице с материалом они не нужны. <?if($OTHER1$='1')?>Республика Адыгея<?endif?> <?if($OTHER1$='2')?>Республика Башкирия<?endif?> <?if($OTHER1$='3')?>Бурятская республика<?endif?> |
Цитата (PC-MASTER) Подсажишь как совместить это с other 1-2, у меня получаеться при выборе в $FILTER1_VALUE$ региона будет менять город Ну для начала нужно обернуть наш код в form и сэлектам задать id В общем это Код <script language="JavaScript"> $("#bdF13").replaceWith("<select name='other1'><option value='0'>Выберите регион</option><option value='1'>Регион 1</option><option value='2'>Регион 2</option><option value='3'>Регион 3</option></select>"); $("#bdF14").replaceWith("<select name='other2'><option value='0'>Выберите страну</option><option value='1'>Страна 1</option><option value='2'>Страна 2</option><option value='3'>Страна 3</option></select>"); </script> Замени на это Код <script language="JavaScript"> $("#bdF13").replaceWith("<select name='other1'><option value='0'>Выберите регион</option><option value='1'>Регион 1</option><option value='2'>Регион 2</option><option value='3'>Регион 3</option></select>"); $("#bdF14").replaceWith("<select name='other2'><option value='0'>Выберите страну</option><option value='1'>Страна 1</option><option value='2'>Страна 2</option><option value='3'>Страна 3</option></select>"); </script> <script type="text/javascript" src="http://auto09.3dn.ru/Skripti-/region_gorod/script.js"></script> <script type="text/javascript"><!--window.onload = function() {dynamicSelect("region", "gorod");}//--> По идеи оно должно бы работать. Но я у себя проверил, второе поле не активируется после выбора первого. Странно. Видимо один срикпт перебивает второй. Как решить не знаю. Подумаю, ещё, может что придумаю. А пока замени старый код на тот что я дал. Сообщение отредактировал Rad_van_Cor - Суббота, 18 Май 2013, 13:34:15
|
|
Цитата (PC-MASTER) Всё работает но только они не связаны Ну я об этом и говорю, внимательно читайте Цитата (Rad_van_Cor) По идеи оно должно бы работать. Но я у себя проверил, второе поле не активируется после выбора первого.Странно. Видимо один срикпт перебивает второй. Как решить не знаю. Подумаю, ещё, может что придумаю. |
А ты случайно не знаешь как сохранить выбор допустим я добавил объявления выбрал цвет серый после я хочу его редактировать и значение становиться на выбориз списка а должен быть серый
Сообщение отредактировал PC-MASTER - Воскресенье, 19 Май 2013, 00:37:02
|
Цитата (PC-MASTER) А ты случайно не знаешь как сохранить выбор допустим я добавил объявления выбрал цвет серый после я хочу его редактировать и значение становиться на выбориз списка а должен быть серый Нет, не знаю. А по поводу первого вопроса. Вот тебе решение. На странице добавления (доска объявлений) удали все скрипты которые ставил до этого (которые я тебе давал) И после $BODY$ вставь это Код <script type="text/javascript"> function dynamicSelect(id1, id2) { if (document.getElementById && document.getElementsByTagName) { var sel1 = document.getElementById(id1); var sel2 = document.getElementById(id2); var clone = sel2.cloneNode(true); var clonedOptions = clone.getElementsByTagName("option"); refreshDynamicSelectOptions(sel1, sel2, clonedOptions); sel1.onchange = function() { refreshDynamicSelectOptions(sel1, sel2, clonedOptions); } } } function refreshDynamicSelectOptions(sel1, sel2, clonedOptions) { while (sel2.options.length) { sel2.remove(0); } var pattern1 = /( |^)(select)( |$)/; var pattern2 = new RegExp("( |^)(" + sel1.options[sel1.selectedIndex].value + ")( |$)"); for (var i = 0; i < clonedOptions.length; i++) { if (clonedOptions[i].className.match(pattern1) || clonedOptions[i].className.match(pattern2)) { sel2.appendChild(clonedOptions[i].cloneNode(true)); } } } </script> <script type="text/javascript"> (function(){ var e=$('#addEntForm .manFlOth1'),v=e.val(); e.replaceWith('<select class="manFlOth1" name="manFlOth1" id="region" onchange="sfltrs(this.options[this.selectedIndex].value,1)"> <option style="color: #AAAAAA" value="0">Выберите Регион:</option> <option value="Russ">Россия</option><option value="Ukr">Украина</option><option value="Bel">Беларусь</option></select>'); $('#addEntForm .manFlOth1').val(v); var e2=$('#addEntForm .manFlOth2'),v=e2.val(); e2.replaceWith('<select class="manFlOth2" name="manFlOth2" id="gorod"> <option style="color: #AAAAAA" class="0" value="Выберите Город:">Выберите Город:</option> <option class="Russ" value="Москва">Москва</option><option class="Russ" value="Санкт-Петербург">Санкт-Петербург</option><option class="Russ" value="Екатеринбург">Екатеринбург</option><option class="Ukr" value="Киев">Киев</option><option class="Ukr" value="Севастополь">Севастополь</option><option class="Ukr" value="Кировоград">Кировоград</option><option class="Bel" value="Минск">Минск</option><option class="Bel" value="Витебск">Витебск</option><option class="Bel" value="Бобруйск">Бобруйск</option></select>'); $('#addEntForm .manFlOth4').val(v); dynamicSelect("region", "gorod"); };)); </script> Источник: likbezz.ru Сообщение отредактировал Rad_van_Cor - Воскресенье, 19 Май 2013, 12:20:28
|
Получилось из того что было сам мудрил и получилось
Код <script language="JavaScript"> $("#bdF18").replaceWith("<select name='filter1' id='region' onchange='sfltrs(this.options[this.selectedIndex].value,1)'><option style='color: #AAAAAA' value='0'>Выберите Регион:</option><option value='1'>01 Республика Адыгея</option><option value='2'>02 Республика Башкирия</option><option value='3'>03 Бурятская республика</option><option value='4'>04 Республика Алтай</option><option value='5'>05 Республика Дагестан</option><option value='6'>06 Ингушская республика</option><option value='7'>07 Кабардино-Балкарская республика</option><option value='8'>08 Республика Калмыкия</option><option value='9'>09 Карачаево-Черкесская республика</option></select>"); </script> <script language="JavaScript"> $("#bdF14").replaceWith("<select name='other2' id='gorod'><option style='color: #AAAAAA' class='0' value='Выберите Город:'>Выберите Город:</option><option class='9' value='Черкесск'>Чекресск</option><option class='8' value='0'>0</option><option class='7' value='0'>0</option></select>"); </script></form> Спасибо!Но теперь надо как то сделать то бы после таго как добавил объявления если редактировать сохранялись выбраные значения для каждого объявления а то он сбрасывает выбраные значения. Добавлено (21 Май 2013, 19:13:23) Цитата (Rad_van_Cor) <?if($OTHER1$='1')?>01 Республика Адыгея<?endif?> <?if($OTHER1$='2')?>02 Республика Башкирия<?endif?> <?if($OTHER1$='3')?>03 Бурятская республика<?endif?> А не как это по другому не сделать что бы читал не с value а с того что написано после! |
| |||