Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как узнать id? (https://javascript.ru/forum/misc/39981-kak-uznat-id.html)

j.r.r 19.07.2013 18:57

Как узнать id?
 
Как определить ид строки таблицы? Чтобы потом можно было ссылаться на него? По клику на неё например.

danik.js 19.07.2013 19:14

tr.onclick = function(){
    alert(this.id);
}

j.r.r 19.07.2013 19:27

Благодарю, но как мне на неё сослаться из другого источника. Задача такова: Есть таблица, в неё n ко-во строк, в каждой есть ячейка, при нажатии на который открывается цвет с вариантами цветов. Вот как сделать, чтобы сторонний див мог ссылаться на именно на эту строку, менял цвет на нужный именно этой строки?

danik.js 19.07.2013 20:02

Какой еще сторонний див? У тебя колорпикер какой-то подключен? Давай код, давай демку, а так не о чем говорить..

j.r.r 19.07.2013 21:56

Код на php:

<?PHP
echo "<table border='1px' id='table' width='100%'>";
echo "<tr id='tr$a'>";
echo "<td>№№</td>";
echo "<td><a href="#" onClick='h_show()'>Цвет</td>";
echo "</tr>";
$a+=1;
echo "<tr id='tr$a'>";
echo "<td>№№</td>";
echo "<td><a href="#" onClick='h_show()'>Цвет</td>";
echo "</tr>";
echo "</table>";
echo "<div id='pro_kr_r' class='hidden_r'><a href='#' id='un_1' onClick='un_1()'> 1</a> <a href='#' id='un_2' onClick='un_2()'> 2</a><br><a href='#' id='un_3' onClick='un_3()'> 3</a> <a href='#' id='un_4' onClick='un_4()'> 4</a></div>"; //-----тот самый див, что появляется поверх с вариантами цветов
?>

Код js: (ПРОСТО ВЫВОДИТ/СКРЫВАЕТ ДИВ ИЗ ПРИЛОЖЕННОЙ ТАБЛИЦЫ CSS)

<script>
var dir = document.getElementById('pro_kr_r');
function h_show()
{
   if (dir.className == 'hidden_r')
   {
      dir.className='visible_r';
   } else {
      dir.className='hidden_r';
   }
}
function hide(evt)
{
   if (evt.target != document.getElementById('d'))
   {
      dir.className='hidden_r';
   }
}
dir.addEventListener('click', h_show, false);
var body = (document.body) ? document.body : document.documentElement.childNodes[1];
body.addEventListener('click', hide, false);
</script>


И плюс та самая функция un_...() из дива:

function un_1(){

ВОТ ЗДЕСЬ ДОЛЖЕН БЫТЬ КОД, КОТОРЫЙ МЕНЯЕТ ЦВЕТ СТРОКИ, НО КОТОРУЮ НАЖАЛИ, ЧТОБ ОТКРЫТЬ ДИВ

}

Прошу прощения за код, суть вроде бы отразил, весь код страницы выложить не могу, потому что страница уже не начальной стадии, и будет ещё более запутанно

danik.js 20.07.2013 01:05

ну это пиздец а не код. Приведи в нормальное состояние все. Че за куча echo? Че за куча un_xxx? ссылку на body лучше кстати получать так:
var body = document.body || document.querySelector('body');

j.r.r 20.07.2013 08:21

Цитата:

ну это пиздец а не код
Ну а кто спорит. Писал специально, чтоб показать. Я ж ведь объяснил, что со страницы если копировать, то будет слишком много всего

j.r.r 20.07.2013 08:38

А что касаемо самого вопроса, то проще оказалось сделать так:

onClick='функция(this)'

функция(el){
a = el.id;
}

Как-то попроще для понимания:)


Часовой пояс GMT +3, время: 02:30.