Autor Zpráva
Murtag
Profil *
Ahoj potřebuji po kliknutí na odkaz dostat href toho dotazu, bez toho abych použil ID. Odkaz vypadá takto <a href="url">title</a> a nemohu do něj nic přidat je takto uložen v db. A eď potřebuji po kliku na něj získat obsah atributu href. Zkusil sem to takto:
<script>
$('a').click(function() { 
var url = this.href;
});</script>

Bohužel kliknutí na ten odkaz nevyvolá tuto událost, když však místo a dám například tag p tak to funguje. Je nějaké řešení? Předem děkuji za odpovědi.
amon
Profil
Pokial máš načítanú jQuery, malo by to fungovať.
Problém je, že sa to síce vykoná, ale taktiež aj prehliadač prejde na danú adresu. Riešením je pridať ešte return false; na koniec, alebo použiť preventDefault:

$('a').click(function(e){
  e.preventDefault(); // Zabráni vykonaniu predvolenej akcie - načítania stránky

  var url = this.href;
  console.log(url); // Vypíše URL do Firebugu
});
Murtag
Profil *
Děkuji, bohužel nefunguje. Ještě jsem zapomněl říci, že odkaz obsahuje #kotvu
_es
Profil
Murtag:
function ovladac(){alert(this.href)}
for(var i = 0; i < document.links.length; ++i) document.links[i].onclick = ovladac;

Ak ešte treba aj zabrániť prejdeniu na cieľ odkazu, treba do funkcie doplniť príkaz return false.
Samozrejme, udalosť sa priradí len na vtedy existujúce odkazy, ak to chceš aj pre budúce, dynamicky cez JS pridávané odkazy, môžeš vyjsť z tohoto skriptu.
Murtag
Profil *
Děkuji mnohokrát jak jednoduché :)

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0