Связанные списки городов, регионов и тп. Как сделать?
|
|
|
2013-05-18Дата: Суббота, 18.05.2013, 20:40 | Сообщение # 1 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Сам скрипт:
Код <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>
Форма добавления имеет ID == addEntForm, дополнительные поля в ней - классы manFlOth1 - manFlOth4 Код <form id="addEntForm" action="" method="get"> <input name="" type="text" class="manFlOth1" /> <input name="" type="text" class="manFlOth4" /> </form>
Заменяем их на списки, по выполнению запускаем инициализацию замены: Код <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 .manFlOth4'),v2=e2.val(); e2.replaceWith('<select class="manFlOth4" name="manFlOth4" 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>'); dynamicSelect("region", "gorod"); $('#addEntForm .manFlOth4').val(v2); })(); </script>
☑ Экземпле: http://likbezz.ru/_example/_rest/_2013/p1/dynamicSelect.html
..
| | |
|
|
2013-05-20Дата: Понедельник, 20.05.2013, 00:20 | Сообщение # 2 |
Рядовой
Группа: Проверенные
Статус: Offline
|
подскажи почему у меня работает данный скрипт?Всё делаю как ты?
| | |
|
|
2013-05-20Дата: Понедельник, 20.05.2013, 00:56 | Сообщение # 3 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
pc-master09, подскажи почему у меня работает данный скрипт? Ссылку на то где не работает, дайте, посмотрю.
| | |
|
|
2013-05-20Дата: Понедельник, 20.05.2013, 01:00 | Сообщение # 4 |
Рядовой
Группа: Проверенные
Статус: Offline
|
Он работает но фигня в том что при редактирования материала регионы сохраняют выбраное значение а город нет выбераю из списка 3 пункт он кидает меня на первый. http://proverojnui.ucoz.ru/board/
Код <script type="text/javascript" src="http://proverojnui.ucoz.ru/region_gorod.js"></script> <script type="text/javascript"><!--window.onload = function() {dynamicSelect("region", "gorod");}//--></script> <form id="addEntForm" action="#" method="get"> <script type="text/javascript"> (function(){ var e=$('#addEntForm .manFlFlt1'),v=e.val(); e.replaceWith('<select class="manFlFlt1" 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>'); $('#addEntForm .manFlFlt1').val(v);})();</script> <script type="text/javascript"> (function(){ var e2=$('#addEntForm .manFlOth1'),v2=e2.val(); e2.replaceWith('<select class="manFlOth1" name="other1" id="gorod"><option style="color: #AAAAAA" class="0" value="0">Выберите Город:</option><option class="1" value="Чекресск">Чекресск</option><option class="1" value="Чекресск2">Чекресск2</option><option class="2" value="ee">ee</option><option class="2" value="ee">ee</option></select>'); $('#addEntForm .manFlOth1').val(v2);})(); </script></form>
Сообщение отредактировал pc-master09 - Понедельник, 20.05.2013, 01:09 | | |
|
|
2013-05-20Дата: Понедельник, 20.05.2013, 01:39 | Сообщение # 5 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
pc-master09, Он работает но фигня в том что при редактирования материала регионы сохраняют выбраное значение а город нет Вот это уберите. Код <script type="text/javascript"><!--window.onload = function() {dynamicSelect("region", "gorod");}//--></script> А из скрипта что http://proverojnui.ucoz.ru/region_gorod.js вот это: Код window.onload = function() { dynamicSelect("region","gorod"); } И вот сюда добавьте: Код $('#addEntForm .manFlOth1').val(v2);
что бы было вот так: Код dynamicSelect("region", "gorod"); $('#addEntForm .manFlOth1').val(v2);
| | |
|
|
2013-05-20Дата: Понедельник, 20.05.2013, 01:51 | Сообщение # 6 |
Рядовой
Группа: Проверенные
Статус: Offline
|
НЕ работает появились другие пункты относящиеся к другому региону! Добавлено (20.05.2013, 01:49) --------------------------------------------- Ошибся спасибо большое за помощь где я только не искал как это сделать!!! Добавлено (20.05.2013, 01:51) --------------------------------------------- Всё работает!
| | |
|
|
2013-11-05Дата: Вторник, 05.11.2013, 18:18 | Сообщение # 7 |
Рядовой
Группа: Проверенные
Статус: Offline
|
Подскажите мне тоже этот код если вариант как ставить где ставит как работает ?
| | |
|
|
2013-11-05Дата: Вторник, 05.11.2013, 19:35 | Сообщение # 8 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
az7777, Подскажите мне тоже этот код если вариант как ставить где ставит как работает ? А зачем он вам, раз вы даже не в курсе что и для чего это? Все необходимое в первом сообщении темы
| | |
|
|
2013-11-05Дата: Вторник, 05.11.2013, 19:41 | Сообщение # 9 |
Рядовой
Группа: Проверенные
Статус: Offline
|
я хочу свезать регионы и города ...
| | |
|
|
2013-11-05Дата: Вторник, 05.11.2013, 20:25 | Сообщение # 10 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
az7777, я хочу свезать регионы и города ... Все необходимое для этого в первом сообщении темы. Листинг, краткая инструкция и пример.
Что непонятно, спрашивайте - поясню.
| | |
|
|
2013-11-05Дата: Вторник, 05.11.2013, 21:49 | Сообщение # 11 |
Рядовой
Группа: Проверенные
Статус: Offline
|
Вот добвил код когда добавляю показывает все норм ... ну кокой год нужно прописать в вид материале чтоб он показывал регионы и как надо искать материал через эти филтрый ? Добавлено (05.11.2013, 21:49) --------------------------------------------- Вот добвил код, когда добавляю объявление показывает все нормально ... ну кокой код надо прописать в вид материале чтоб он показывал регионы и городаи как надо искать материал через эти филтрый ?
| | |
|
|
2013-11-05Дата: Вторник, 05.11.2013, 23:35 | Сообщение # 12 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
az7777, у кокой год нужно прописать в вид материале чтоб он показывал регионы Те дополнительные поля что вы отвели под них. В примере - это доп. поле №1 и №4 Соответственно:
и как надо искать материал через эти филтрый ? Поиск по дополнительным полям юкоз не осуществляет, кроме модуля ИМ.
| | |
|
|
2013-11-06Дата: Среда, 06.11.2013, 09:32 | Сообщение # 13 |
Рядовой
Группа: Проверенные
Статус: Offline
|
Поиск по дополнительным полям юкоз не осуществляет, кроме модуля ИМ. тогда от неё пользы мало ..а нет такой чтоб через фильтры работали ?
| | |
|
|
2013-11-06Дата: Среда, 06.11.2013, 19:20 | Сообщение # 14 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
az7777, тогда от неё пользы мало .. )) - нет, вы посмотрите, он меня еще и обвиняет.. кашмар ))
а нет такой чтоб через фильтры работали ? Нет.
| | |
|
|
2013-11-07Дата: Четверг, 07.11.2013, 10:27 | Сообщение # 15 |
Рядовой
Группа: Проверенные
Статус: Offline
|
) - нет, вы посмотрите, он меня еще и обвиняет.. кашмар Да нет просто мне очень нужен был этот скрипт )) вам всёровно спасибо )
| | |
|