0
- 18.11.2015 - 10:42
|
Имеем <DIV> <UL> </UL> </DIV> <DIV> <UL> </UL> </DIV> итд............ <DIV> <UL> </UL> </DIV> при нажатии на DIV нужно вывести во вложенный UL результат обработки PHP, в зависимости от того на какой DIV нажал (какие параметры DIV, например имя DIVа). Я могу сделать это сделав количество jQuery обработчиков равное кол-ву ДИВов, но хочется сделать с одним обработчикам. | |
1
- 19.11.2015 - 14:08
| Сергей, задайте всем дивам одинаковый класс и устанавливайте обработчик на этот класс. Далее уже будете использовать внутренние данные каждого дива в своих расчетах. | |
2
- 24.11.2015 - 14:18
|
Ребята - Зачем все усложнять? Если DIVу можно присваивать Имя или Класс. Тогда проще присвоить ID и onclick="FunctionJS(ID);". В результате получается: <div id="1" onclick="FunctionJS(1);"></div> ... ... <div id="n" onclick="FunctionJS(n);"></div> <script type="text/javascript"> function FunctionJS(id){Обработчик клика по диву** </script> Вот и все! И потом хоть jQuery хоть Ajax подгружаем из PHP <ul>...</ul>, вообщем все что Вам нужно. | |
3
- 24.11.2015 - 14:45
|
0-SergeySS >Вот тебе рабочий код - бери пока я Добрый и не мучайся! <div class="group_boxc"> <a onclick="GroupOpen(20)" title="Открыть"><span class="group_open" id="gr_20">+</span></a> <a href="avtozapchasti-jidkosti_NORD">Охлаждающие жидкости NORD</a> <div style="margin:5px 0 5px 0;" id="grtxt_20"></div> </div><div class="group_boxc"> <a onclick="GroupOpen(21)" title="Открыть"><span class="group_open" id="gr_21">+</span></a> <a href="avtozapchasti-antifrizyi_MOBIL">АНТИФРИЗЫ MOBIL</a> <div style="margin:5px 0 5px 0;" id="grtxt_21"></div> </div><div class="group_boxc"> <a onclick="GroupOpen(22)" title="Открыть"><span class="group_open" id="gr_22">+</span></a> <a href="avtozapchasti-antifrizyi_ZIC">АНТИФРИЗЫ ZIC</a> <div style="margin:5px 0 5px 0;" id="grtxt_22"></div> </div> <script type="text/javascript"> function GroupOpen(tid)** var st=document.getElementById('gr_'+tid).innerHTML; if(st=='-')** document.getElementById('gr_'+tid).innerHTML='+'; document.getElementById('grtxt_'+tid).innerHTML='' ; **else{ document.getElementById('gr_'+tid).innerHTML='-'; document.getElementById('grtxt_'+tid).innerHTML='< img src="images/admin/loader.gif" style="border-radius:10px;" />'; $.post("form-catalog_group", ** group:tid **, function(data)** document.getElementById('grtxt_'+tid).innerHTML=da ta; **, "html"); ** ** </script> Тут правда onclick в <a> сделан (это чтобы Плюс на Минус менять) но лишнее можешь Выкинуть! Оригинал Кода здесь: http://www.atomavto.ru/avtozapchasti...schie_jidkosti Можно посмотреть как это работает! | |
4
- 24.11.2015 - 20:37
| innerhtml, onclick при наличии jquery?) передавать параметр = id который уже есть у span?) | |
5
- 27.11.2015 - 15:10
|
$('.classname').bind('click',function()** получаем ид - и т.д. $(this). ... **); | |
6
- 03.12.2015 - 22:44
|
4-droidman >А чем Вам не нравится OnClick и document.getElementById().innerHTML ? Первый - Это стандартное событие (любой Браузер понимает)! Вторая - Стандартная функция JS (ее таже jquery использует). Да в коде слишком МНОГО лишних БУКОВОК - но ведь работает! Вообще там раньше работал Ajax, но прикрутили jquery и выкинули его, а вот код в движке остался. Так сказать обошлись МАЛОЙ кровью! | |
7
- 03.12.2015 - 23:00
|
4-droidman >Да и кстати у span и у div там ID нет! Им ID присваивает PHP исходя из их id базы MySQL и буковок "gr_" и "grtxt_"! И по этому достаточно передать ID в функцию GroupOpen(), и она сразу найдет куда и ЧЕ вставлять! | |
8
- 03.12.2015 - 23:43
| ну если не смущает трёхкратное упоминание ID и явная шаблонизация, то норм) | |
| Интернет-форум Краснодарского края и Краснодара |