• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

JQuery ... Anfängerfragen

Spoiler

Mitglied
Servus,

ich bin grad dabei, mich mit JQuery vertraut zu machen.
Im Prinzip funktioniert soweit auch schon alles, was ich versucht habe, trotzdem stellen sich noch einige Fragen zu dem grundsätzlichen Handling:

Ich habe zu Beispiel einige Links auf einer Seite, die auf ein Onclick reagieren sollen.
Dazu habe ich entsprechend auch etwas gebastelt:
Code:
$('a#Link1').click(function(){machmalwas(); return false;});

Soweit so gut ... nun habe ich aber auch meinen Seite viele Links ... und das auch noch dynamisch, die jeweils eine Id mit übergeben.
Das heisst, ich kann nicht zu jedem Link ein OnClick definieren.

Wie löse ich denn das Problem?

Hier mal das Template der Links:
Code:
><a href="#" onclick="AjaxGetRequest('$DATEN[id]');">$DATEN[name]</a>

Ob da dann auf der Seite 10 oder 200 Einträge stehen, kann ich jetzt noch nicht sagen ... per Ajax wird halt die Id an den Server übertragen, der darauf hin dann die Details lädt.


Meine 2te Herausforderung besteht in Formularen.

Folgenden Versandt konnte ich schon realisieren:
Code:
function FormGetRequest(FormID)
{
  clearTimeout(AjaxRedirTimeout);
  
  $.ajax(
  {
    type:     'POST',
    url:      'index.php?AJAX=AJAX',
    data:     $('#' + FormID).serializeArray(),
    success:  function(data)
              {alert(data);
                ajax = eval('(' + data + ')');
                if(ajax!=false)
                {
                  HandleReturn(ajax);
                }
              }
  
  
  });
}

Wie bekommte ich denn jetzt auf der Server-Seite ein Array bzw. ein Object, wo alle Daten drin sind.
Bis jetzt hatte ich mir die Serialisierung selbst zusammengebaut und dann auf dem Server mit JSON_decode ein Object erzeugt.

Das scheint hier nicht so zu funktionieren, wie ich das auf den ersten Blick denken würde.

Kann mir das bitte jemand kurz erklären?

Danke im Voraus.

Gruß

Spoiler
 
Werbung:
so mache ich es:
Code:
<a class="tuwas" href="" data-ajax-id="1"></a>
$("a.tuwas").click(function(){alert($(this).attr("data-ajax-id")); return false;});

data- ist das prefix für benutzerdefinierte attribute nach html5. jquery kommt aber auch mit jedem anderen attribut namen zurecht. bsp: <a href="" murks="pumuckel"></a>
also immernoch kein html5 zauber, aber zumindest nach den richtlinien.
 
Danke,

werd ich gleich mal ausprobieren.

Noch ne Frage zu serialize .... unter welchem Namen kann ich denn die Daten aufm Server ansprechen um ein unserialize durchzuführen?

Also wenn ich "data: $('#' + FormID).serializeArray()," übergebe ... dann gibt es bei mir nix was $_POST['data'] heisst.
 
Zuletzt bearbeitet:
Werbung:
ok,

aber was ist, wenn ich genau das gar nicht möchte, sondern weiterhin auf dem Server mit JSON_decode mein Object erzeugen will, dass meine Daten beinhaltet?
 
das json format ist ein string, es eignet sich um daten vom server an den client zu senden. für den anderen weg, also vom client zum server, gibt es die varianten post und get. post für große dateimengen und get für kleine variablen in der url.
um daten im json format an den server zu senden könntest du den kompletten json string in eine post variable packen... das ist sinnfrei!
 
Werbung:
Zurück
Oben