Javascript CLICK – jak na

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Zerig
Člen | 70
+
0
-

Zdravím
V Latte mám toto.

{foreach $tasks as $task}
	<span class="test">
		{$task->text}
	</span>
{/foreach}

A chtěl bych, aby třeba při kliknutí na určitý span se např. obarvil.

V javascriptu mám zatím jen toto:

$(".test").click(function () {

});

Zatím aby to fungovalo to řeším takto:

{foreach $tasks as $task}
	<span class="test" id="{$iterator->getCounter()}"  onclick="colorDiscuss({$iterator->getCounter()})">
		{$task->text}
	</span>
{/foreach}
function colorDiscuss(id) {
	document.getElementById(id).style.color = 'red';
}

Sice to funguje, ale veřím že způsobem, kterým bych to spíše chtěl je čistčí a pro úpravy přehlednější.

Editoval Zerig (26. 4. 2013 13:54)

Michal Vyšinský
Člen | 608
+
0
-

Toto nemá s nette nic společného, ale když už:

  1. onclick bych nepoužíval, použil bych nějakou css třídu (třeba to test co tam máš)
  2. script bych navázal kliknutí na .test
  3. když už tam máš jQuery tak nechápu smysl používání document.getElement…

V praxi by to mohlo vypadat takto:

$(".test").on("click", function(){
	$(this).css("color", "red");
});

Editoval CherryBoss (26. 4. 2013 14:19)

llook
Člen | 407
+
0
-

Dá se to dělat takhle jednoduše:

$(".test").click(function () {
	$(this).css({ color: 'red' });
});

Viz http://api.jquery.com/

Zerig
Člen | 70
+
0
-

Děkuju funguje to

Majkl578
Moderator | 1364
+
0
-

Vyhazuji, nesouvisí s Nette. Příště s podobnými dotazy choď na djpw.cz.