Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.04.2012, 08:25
Новичок на форуме
Отправить личное сообщение для krokusandr Посмотреть профиль Найти все сообщения от krokusandr
 
Регистрация: 26.10.2011
Сообщений: 8

Как реализовать onclick на ячейках таблицы
Как реализовать onclick на ячейках таблицы? Чтобы бралась та ячейка на которую кликнули. И почему alert срабатывает сразу: this.onclick=alert(2);
Ответить с цитированием
  #2 (permalink)  
Старый 10.04.2012, 23:21
Аспирант
Отправить личное сообщение для KingStar Посмотреть профиль Найти все сообщения от KingStar
 
Регистрация: 25.08.2011
Сообщений: 42

Что-то вроде того:

<td onClick="window.alert('Бла-Бла-Бла...');">Бла-Бла-Бла...</td>


<script language="JavaScript" event="onmouseup" for="id_ячейки">  
   alert('Бла-Бла-Бла...');
</SCRIPT>


<td>
<a href="javascript:alert('Бла-Бла-Бла...')">Бла-Бла-Бла...</a>
</td>

Последний раз редактировалось KingStar, 10.04.2012 в 23:23.
Ответить с цитированием
  #3 (permalink)  
Старый 15.04.2012, 17:39
Аспирант
Отправить личное сообщение для Le-mark43 Посмотреть профиль Найти все сообщения от Le-mark43
 
Регистрация: 08.02.2012
Сообщений: 34

ну или с участием jquery:
<td>Бла-Бла-Бла</td>
<script>
$("td").click(function(){
alert($(this).text()); // Бла-Бла-Бла
});
либо alert($(this).html()); //если в ячейке не просто текст
покажет содержимое любой ячейки
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 02.05.2012, 11:11
Интересующийся
Отправить личное сообщение для last-art Посмотреть профиль Найти все сообщения от last-art
 
Регистрация: 26.01.2012
Сообщений: 10

Да, только в последнем случае с использованием jquery есть неоспоримый +, если у вас td>10 вешать на каждую ячейку событие может оказаться накладным.

jquery, в данном случае конечно удобнее, он дает событие по тегу. (c) Кэп


А у меня вот другая проблема, как сделать то же самое, что предложил Le-mark43, но без использования jquery/
Ответить с цитированием
  #5 (permalink)  
Старый 02.05.2012, 11:51
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,745

Сообщение от krokusandr
Как реализовать onclick на ячейках таблицы? Чтобы бралась та ячейка на которую кликнули. И почему alert срабатывает сразу: this.onclick=alert(2);
Что вы хотите, куда у вас помещён alert, что такое this.onclick и т.п.??
Приведите пример и описание по сути проблемы, а там уже можно будет смотреть, что с этим делать.
Ответить с цитированием
  #6 (permalink)  
Старый 02.05.2012, 12:51
Интересующийся
Отправить личное сообщение для last-art Посмотреть профиль Найти все сообщения от last-art
 
Регистрация: 26.01.2012
Сообщений: 10

Сообщение от krokusandr Посмотреть сообщение
Как реализовать onclick на ячейках таблицы? Чтобы бралась та ячейка на которую кликнули.
Позволю себе подмазаться к теме топикстартера, тем более что волнует один и тот же вопрос.

Вот у нас таблица с 10 ячейками - как узнать на какую ячейку из этой таблицы произведен клик.

В jquery на данный вопрос ответили выше, но вот как сделать нативным js кодом, никто не сказал.







P.S.
Сообщение от krokusandr Посмотреть сообщение
И почему alert срабатывает сразу: this.onclick=alert(2);
Это неведомо!?
Ответить с цитированием
  #7 (permalink)  
Старый 02.05.2012, 13:05
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,745

Сообщение от last-art
Вот у нас таблица с 10 ячейками - как узнать на какую ячейку из этой таблицы произведен клик.
Ссылку можно получить через this.

<table border=1>
<tr>
  <th>1</th>
  <th>2</th>
</tr>
</table>

<script>
function f() {
  alert(this.innerHTML)
}

var a = document.getElementsByTagName('th');

for (i=0; i<a.length; i++) {
a[i].onclick = f
}
</script>
Ответить с цитированием
  #8 (permalink)  
Старый 02.05.2012, 13:26
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,589

Сообщение от bes
01 <table border=1>
02 <tr>
03 <th>1</th>
04 <th>2</th>
05 </tr>
06 </table>
07
08 <script>
09 function f() {
10 alert(this.innerHTML)
11 }
12
13 var a = document.getElementsByTagName('th');
14
15 for (i=0; i<a.length; i++) {
16 a[i].onclick = f
17 }
18 </script>
чего? ну и говнокод ..
слушатель на всю таблицу вешать, а не на каждую ячейку.и в колбеке определять соответствие...

Последний раз редактировалось dmitriymar, 02.05.2012 в 13:28.
Ответить с цитированием
  #9 (permalink)  
Старый 02.05.2012, 13:33
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,745

Сообщение от dmitriymar
чего? ну и говнокод .. слушатель на всю таблицу вешать а не на каждую ячейку.и в колбеке определять соответствие
Если знаешь другой способ, приведи код, не все же такие умные
Ответить с цитированием
  #10 (permalink)  
Старый 02.05.2012, 13:47
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,589

bes,
тебе сюда- http://learn.javascript.ru/introduction-browser-events
чтоб не было подобных фраз
Сообщение от bes
Если знаешь другой способ, приведи код, не все же такие умные
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать, что содержит onClick? PHPNoob Events/DOM/Window 3 17.07.2015 12:20
Как реализовать ввод данных в скрипт? Ko1dun Events/DOM/Window 5 13.11.2011 19:33
OnClick ячейки таблицы и ссылки в этой ячейке MasDen Javascript под браузер 2 30.06.2011 09:34
Как реализовать присваивание в цикле? pine Общие вопросы Javascript 7 24.02.2011 23:08
Как в IE динамически установить значение события onClick? Гость Элементы интерфейса 6 16.01.2011 22:46