Внимание! Данный раздел закрыт и доступен только для чтения в связи с запуском нового проекта uВопросы, на котором Вы можете найти ответ или задать любой интересующий вопрос по системе uCoz. Задавайте вопросы, ищите ответы и помогайте найти ответы другим пользователям системы! Получайте баллы и открывайте новые достижения. Подробнее в блоге...

Перейти на новый сайт помощи по uCoz


  • Страница 1 из 2
  • 1
  • 2
  • »
Архив - только для чтения
Сообщество uCoz » Модули uCoz » Контент-модули » Доска объявлений » Как сделать выпадающий список при добавлении материала (Как сделать выпадающий список к примеру из OTHER 1-5)
Как сделать выпадающий список при добавлении материала
PC-MASTER
Сообщений: 75
Репутация: 6

Сообщение # 1 | 23:37:51
Как прописать что бы был выпадающий список в замен поля other 1-5 какой код и куда вставить???
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 2 | 23:45:47
PC-MASTER, что? По точней опишите, ни чего не понятно. Какой список ещё?
Может вы хотите заменить стандартные input поля при добавлении материала на select ?

PC-MASTER
Сообщений: 75
Репутация: 6

Сообщение # 3 | 00:12:31
Да правильно есть готовый код но не могу понять как реализовать!

Добавлено (18 Май 2013, 00:12:31)
---------------------------------------------
нужно вместо other1 сделать выпадающий список регионов а потом в other2 городов в модуле онлайн-игр в форме добавления матриала получаеться а мне надо в доске объявлений

Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 4 | 01:00:28
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>


Ну там в коде уже сами допишите нужное количество стран и регионов и их названия.
В коде не использовать двойные скобки " только одинарные.

PC-MASTER
Сообщений: 75
Репутация: 6

Сообщение # 5 | 09:33:29
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
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 6 | 12:35:07
Цитата (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
Сообщений: 75
Репутация: 6

Сообщение # 7 | 12:58:25
Подсажишь как совместить это с other 1-2, у меня получаеться при выборе в $FILTER1_VALUE$ региона будет менять город всё это получаеться в онлайн-игры но как это совместить в доске объявлений!Заранее Спасибо!
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 8 | 13:29:35
Цитата (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
Сообщений: 75
Репутация: 6

Сообщение # 9 | 13:58:12
Чё то вообще даже не работает!
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 10 | 14:03:11
PC-MASTER, значить что-то не так сделал. У меня работает

PC-MASTER
Сообщений: 75
Репутация: 6

Сообщение # 11 | 14:09:20
Rad_van_Cor, Всё работает но только они не связаны там как то по id надо сделать но пробую без изменений

Код
<form action="#" method="post">  
<select name="filter1" id="region" onchange="sfltrs(this.options[this.selectedIndex].value,1)">
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 12 | 14:12:45
Цитата (PC-MASTER)
Всё работает но только они не связаны

Ну я об этом и говорю, внимательно читайте

Цитата (Rad_van_Cor)
По идеи оно должно бы работать. Но я у себя проверил, второе поле не активируется после выбора первого.Странно. Видимо один срикпт перебивает второй.

Как решить не знаю. Подумаю, ещё, может что придумаю.

PC-MASTER
Сообщений: 75
Репутация: 6

Сообщение # 13 | 21:51:39
А ты случайно не знаешь как сохранить выбор допустим я добавил объявления выбрал цвет серый после я хочу его редактировать и значение становиться на выбориз списка а должен быть серый
Сообщение отредактировал PC-MASTER - Воскресенье, 19 Май 2013, 00:37:02
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 14 | 01:28:29
Цитата (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
PC-MASTER
Сообщений: 75
Репутация: 6

Сообщение # 15 | 19:13:23
Получилось из того что было сам мудрил и получилось


Код
<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 а с того что написано после!
Сообщество uCoz » Модули uCoz » Контент-модули » Доска объявлений » Как сделать выпадающий список при добавлении материала (Как сделать выпадающий список к примеру из OTHER 1-5)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: