| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: для новичков > Учет кликов по ссылке с дополнительными значениями |
| Автор: Another 17.11.2012, 15:55 | ||
Есть ссылка:
Нужно что бы при клике по этой ссылке отправлялся пост-запрос на php файл для учета кликов и передавал значение href, data-text, data-num и анкор ссылки. Как такое осуществить? Желательно без использования библиотек. |
| Автор: Sanchezzz 17.11.2012, 16:14 | ||||
| Только на Jquery (время деньги) онлайн тест http://jsfiddle.net/N9etW/ ( навряд ли будет работать и за политике безопасности)
|
| Автор: Amphiluke 17.11.2012, 19:15 |
| @Another А для чего это делать методом POST? @Sanchezzz В общем случае было бы лучше создать единый обработчик, делегировав обработку события общему для всех ссылок контейнеру (например, body). Особенно если ссылок с атрибутом data-text может быть много. Да, и еще одно. Делать return false из jQuery-обработчика события не всегда хорошо, поскольку это отменяет дальнейшее распространение события вверх по дереву DOM (.stopPropagation()), что исключает возможность другим делегирующим обработчикам обработать событие. Если намеренно не планируется запрет дальнейшего всплытия события, лучше просто отменить действие по умолчанию методом .preventDefault() |
| Автор: Another 17.11.2012, 20:00 | ||
А, собственно, все-равно. Можно и GET |
| Автор: Sanchezzz 17.11.2012, 21:15 | ||
| Amphiluke, знаю что лучше использовать event.stopPropagation() я честенько про него забываю). а событие повесил на все ссылки с атрибутом иза того что больше некчему было прицепится можно конечно было с делать с проверкой значения
|
| Автор: Another 18.11.2012, 00:06 | ||
| Всё не то Упростим задачу.
При клике - отправить GET или POST запрос на файл click.php?click=text |
| Автор: Amphiluke 18.11.2012, 10:06 | ||
В данном случае .preventDefault(), а не stopPropagation() Another, в простейшем случае с GET-вариантом запроса и с отсутствием необходимости дожидаться ответа от сервера, можно, к примеру, сформировать динамический элемент img и указать все эти параметры в его атрибуте src, как делается в распространенных эвент-трекерах.
|
| Автор: Another 18.11.2012, 12:45 | ||
| Почему-то вышепривеенный пример не сработал. к click.php вообще не было обращения... Добавлено через 7 минут и 23 секунды Придумал одно из простейших решений данной проблемы:
а этот самый clicks.php потом обратно редиректит человека на предыдущую страницу. это как вариант. Но хотелось бы еще увидеть что-то покрасивее. |
| Автор: Another 18.11.2012, 15:24 | ||
Проверял и так и эдак. |
| Автор: Aliance 19.11.2012, 10:12 | ||
Sanchezzz, так короче
|