Daten einfaden

  • Moin Leute,


    folgende Frage:


    Ich möchte mithilfe von Ajax und Jquery in einer Tabelle
    weitere Informationen ein und ausfaden können.
    Funktioniert auch alles soweit gut, bis auf eine Sache.


    Nun folgende Frage:
    Ich habe ja eine HTMl Datei in der Jquery/Ajax Code drinne ist.
    Die Daten des ausgefüllten HTML Dokumentes werden anschließend an das referenzierte PHP Dokument geleitet.


    Die Darstellung und Auswertung erfolgt ja auch im PHP und wird im Ajax / HTML nur in einem Div (id Container) dargestellt.


    Nun zur eigentlichen Frage:
    Wie kann ich bestimmte Daten mit Ajax übernehmen?
    Also bei PHP ist es ja so:
    $_POST['Variable']


    Ich will quasi eine Variable oder den Inhalt eines td's vom PHP in Ajax in eine Variable schreiben.
    Ist das Möglich?


    Weil ich habe das Problem, dass ich mehrere Zeilen habe die ich mit fadein und fadeout ein oder ausfaden will.
    Jedoch weiß ich nicht ganz wie ich die alle eindeutig identifizieren kann,
    Im PHP habe ich denen schon alle eine eindeutige ID gegeben.
    Nur wie bekomme ich die ins Ajax???



    vielen Dank vorab!



    mfg feuerbreak

  • Bin nicht sicher ob ich deine Frage ganz richtig verstehe, du formulierst etwas un den heissen Brei herum. Aber ich versuchs mal:


    Du bist nicht sicher, wie du die Daten vom Serverseitigen PHP in den Clientseitigen AJAX-Request kriegst, richtig?


    Die übliche Lösung ist aktuell JSON. Serverseitig werden deine Daten wohl in einem Array oder Objekt gespeichert sein, oder? PHP bietet die funktion json_encode an, welche ein Array oder Objekt zu einem JSON String umwandeln kann. Diesen gibst du dann als antwort auf den AJAX Request aus.


    Ein ganz einfaches Beispiel:


    HTML:


    server.php

    PHP
    1. <?php
    2. // Hier werden die Daten aufbereitet. Für den Test einfach eine kurze Liste.
    3. $data = ['Erster Datensatz', 'Zweiter Datensatz', '...', 'nter Datensatz'];
    4. // Hier werden die Daten ausgegeben. Das ist alles, was der AJAX-Request als Response braucht.
    5. echo json_encode($data);


    main.js

    Code
    1. $(document).ready(function() {
    2. $('#fetch').click(function(){
    3. $.getJSON('server.php', function(json, textStatus) {
    4. $.each(json, function(key, val) {
    5. $('ul#result').append('<li>'+val+'</li>');
    6. });
    7. });
    8. });
    9. });


    Am jQuery code erkennst du schnell den Vorteil von JSON. Da Javascript den Code automatisch zu einem Objekt oder Array parsed, kann direkt darüber iteriert werden. Der Response-Body des Ajax-Requests wird also direkt in eine $.each() funktion gespiesen.

  • Also ich brauche halt eine Möglichkeit, um eine ID aus dem PHP AJAX zurückzugeben.
    Ich will ja nicht alles immer ein und ausfaden sondern nur den bestimmten absatz.
    Dafür eben diese ID.
    Werde es nun so machen:


    Code
    1. $('.Kopf').each(function(){
    2. var KopfId = $(this).find('input[name=Detail_ID]').val();
    3. if($(this).find('.rek_klapp_image').attr('src') == "tl_files/layout/ese_less.jpg")
    4. {
    5. $('#MoreDetailsTable'+KopfId).fadeToggle('slow');
    6. $(this).find('.rek_klapp_image').attr('src', "tl_files/layout/ese_more.jpg");
    7. }
    8. });