Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.05.2011, 11:10
Интересующийся
Отправить личное сообщение для pauluss Посмотреть профиль Найти все сообщения от pauluss
 
Регистрация: 23.03.2010
Сообщений: 22

Onclick, возвращающий объект
Попался такой код (в чужом проекте)
...
<li onclick="return {owner_id: 1, company_id: 2}" class="item"><span class="b-ucompany">Mega</span></li>
...


Что-то я подвис в попытке понять этот onclick. Куда он объект-то возвращает??
Тут есть ещё какой-то суровый фреймворк, вроде самописный, в котором я не разобрался.
Подскажите плизь, знающие люди, как вообще можно что-то надстроить, чтоб такое хоть как-то заюзать?

Должен же быть какой-то обработчик в который, по идее, приходит этот объект при клике. Как его создать, может кто нибудь примерчик привести?

Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 25.05.2011, 11:22
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Это пример "как делать не надо". Работает так:
<li onclick="return 'value';" id="item">Mega</li>
<script>
alert( document.getElementById("item").onclick() );
</script>
То есть onclick используется как хранилище. А при срабатывании события, объект возвращается в никуда. Короче, на редкость через одно место сделано.
Ответить с цитированием
  #3 (permalink)  
Старый 25.05.2011, 12:03
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

Не соглашусь. Это делается прежде всего как независимое хранилище данных, то есть передача данных, мне это кажется очень удобно, так как на разных страницах можно вызывать одну и ту жу функцию с разными аргументами.

Лучше почитать вот здесь http://sreznikov.blogspot.com/search/label/JavaScript
Ответить с цитированием
  #4 (permalink)  
Старый 25.05.2011, 12:46
Интересующийся
Отправить личное сообщение для pauluss Посмотреть профиль Найти все сообщения от pauluss
 
Регистрация: 23.03.2010
Сообщений: 22

Всё понял, спасибо. Интересное решение. Хотя использование события не по назначению смущает.
Но это уже вопрос скорее религиозный. Кому-то нравится такая гибкость, а по мне так это скорее бардак. Дело привычки наверное.
Ответить с цитированием
  #5 (permalink)  
Старый 26.05.2011, 17:58
Профессор
Отправить личное сообщение для hogart Посмотреть профиль Найти все сообщения от hogart
 
Регистрация: 18.04.2008
Сообщений: 152

Способ передачи данных из разметки или от сервера джаваскриптовому компоненту.

Достоинства — компактная запись, не нужно вызывать eval, работает абсолютно везде и довольно быстро.
Недостатки — пуристы сходят с ума

По факту, в современном JS этот атрибут не используется по исконному назначению. С сугубо прагматической точки зрения — это удобно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объект не поддерживает это свойство или метод load_081112_0953.js 1auto1 Общие вопросы Javascript 1 13.04.2011 22:09
Как избавиться от каскадного onclick? GydruS Events/DOM/Window 2 24.02.2011 11:54
Событие onClick avtor01 Events/DOM/Window 3 03.09.2009 18:01
Для события onCLick получить индекс строки и объект грида. progi2007 ExtJS 4 05.08.2009 11:31
Получить объект содержащий caller no_alex Общие вопросы Javascript 14 20.03.2009 21:37