Autor Zpráva
barneby
Profil
Dobrý den,
Na stránkách generuji obsah do bloku pomocí tohoto kodu:
$(function() {
  var dataString = 'pozadavek=nactihlavni';

          $.ajax({
            type: "POST",
            url: "link.php",
            data: dataString,
            cache: false,
            success: function(data){
              $("#hlavniobsah").html(data);
            }
          });
});

A potřeboval bych nějak udělat aby tento kod:
$("a").click(function(e) {
          // To prevent page reload you need .preventDefault()
          e.preventDefault();

          var url = $(this).attr("href");
          var dataString = 'pozadavek=link'+'&url='+url;


          $.ajax({
            type: "POST",
            url: "link.php",
            data: dataString,
            cache: false,
            success: function(data){
              alert(data);
            }
          });

     });

Fungoval na obsah který je generovaný pomocí prvního kodu. Nevíte někdo prsím jak to udělat?
Děkuji.
Keeehi
Profil
A když
$("a").click(function(e) {
předěláš na
$("a").on("click", function(e) {

Ve starších verzích se k tomu používalo .live() a podle dokumentace se má nově používat .on(), tak to snad bude fungovat.
Doufám že víš, proč na ty nové odkazy nejí navěšena ta událost.
Bez_názvu.jpg
Profil *
Zdravim,
Keeehi, oba zápisy dělaj to samý (.click je jen zkratka). Co ses myslim snažil naznačit je, že druhej zápis umožňuje zadat selektor, na který elementy má bejt posluchač delegovanej. Proto bych viděl následující kód jako správnější.

$("#hlavniobsah").on("click", "a", function(e) {
// kdykoli klikneš na odkaz (a), který je v elementu #hlavniobsah, provede se tato funkce
barneby
Profil
Bez_názvu.jpg:
Zdravim,
Keeehi, oba zápisy dělaj to samý (.click je jen zkratka). Co ses myslim snažil naznačit je, že druhej zápis umožňuje zadat selektor, na který elementy má bejt posluchač delegovanej. Proto bych viděl následující kód jako správnější.
>
>
$("#hlavniobsah").on("click", "a", function(e) {
// kdykoli klikneš na odkaz (a), který je v elementu #hlavniobsah, provede se tato funkce
Super tohle funguje. Moc děkuju :) .

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: