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

ajax Daten einfach weiterverarbeiten ohne split

Cheffchen

Senior HTML'ler
Hallo,


leute mal ne frage wie macht ihr das bzw. geht nicht auch besser, nur was ;O)

Daten per ajax empfangen und weiter verarbeiten.
Was mich nun stört ist das untere mit dem split("||"), gerade wenn das mehr als 3 Daten sind zb 50.
Die xyz.php werden die Daten ja zb so ausgegeben "xxx||yyyy||zzz"

Normal wird das ja so gesendet und empfangen
Code:
    $(".edit").bind( "click", function() {
       var id = $(this).val();
        $.ajax({
            type: "POST",
            url: "xyz.php",

       //data: $("#kontaktform").serialize(),
            data: "q=out&id="+id,
            success: function(msg)
            {
                var msgs = msg.split("||");
                $("[name=id]").val(msgs[0]);
                $("[name=re_id]").val(msgs[1]);
                $("[name=re_wo]").val(msgs[2]);
            }
        });
        return false;
    });

ich finde das nicht so übersichtlich, deswegen die frage gibts da eine andere möglichkeit zb das man gleich mit variablen Arbeiten kann ohne das nervige split hochzahlen, ein funktion wäre ja auch eine möglichkeit aber da fehlt mir der richtige schups, das zb gleich bei xzz.php gleich das ausgibt
Code:
id=555&re_id=999999&re_wo=Berlin
und beim empfang im JS gleich var id vorhanden ist.

vielleicht habt ihr ja eine idee?

Cheffchen
 
Werbung:
Hallo,


leute mal ne frage wie macht ihr das bzw. geht nicht auch besser, nur was ;O)

Daten per ajax empfangen und weiter verarbeiten.
Was mich nun stört ist das untere mit dem split("||"), gerade wenn das mehr als 3 Daten sind zb 50.
Die xyz.php werden die Daten ja zb so ausgegeben "xxx||yyyy||zzz"

Normal wird das ja so gesendet und empfangen
Code:
    $(".edit").bind( "click", function() {
       var id = $(this).val();
        $.ajax({
            type: "POST",
            url: "xyz.php",

       //data: $("#kontaktform").serialize(),
            data: "q=out&id="+id,
            success: function(msg)
            {
                var msgs = msg.split("||");
                $("[name=id]").val(msgs[0]);
                $("[name=re_id]").val(msgs[1]);
                $("[name=re_wo]").val(msgs[2]);
            }
        });
        return false;
    });

ich finde das nicht so übersichtlich, deswegen die frage gibts da eine andere möglichkeit zb das man gleich mit variablen Arbeiten kann ohne das nervige split hochzahlen, ein funktion wäre ja auch eine möglichkeit aber da fehlt mir der richtige schups, das zb gleich bei xzz.php gleich das ausgibt
Code:
id=555&re_id=999999&re_wo=Berlin
und beim empfang im JS gleich var id vorhanden ist.

vielleicht habt ihr ja eine idee?

Cheffchen

Habe nicht ganz verstanden was du meinst, aber wie wärs mit JSON? :rolleyes: :D

Code:
$.ajax({…}).done(function (jsonObject) {
  $.each(jsonObject.einArray,function (idx, val) {
    console.log(val);
  });
});
 
Hallo,

ich suche ein funktion wie zb den string id=555&re_id=999999&re_wo=Berlin den ich mir per ajax hole umwandelt in einzelne variable oder Object.
So das ich nach der nach umwandel einfach mit re_id oder parm['re_id'] mit dem inhalt weiter spielen kann.

Beim dem extra Split nervt halt mächtig.
Is halt optimierung, kann auch ohne verbesserung leben aber vielleicht gibt ja was einfaches.

Cheffchen
 
Werbung:
Hallo,

ich suche ein funktion wie zb den string id=555&re_id=999999&re_wo=Berlin den ich mir per ajax hole umwandelt in einzelne variable oder Object.
So das ich nach der nach umwandel einfach mit re_id oder parm['re_id'] mit dem inhalt weiter spielen kann.

Beim dem extra Split nervt halt mächtig.
Is halt optimierung, kann auch ohne verbesserung leben aber vielleicht gibt ja was einfaches.

Cheffchen

Ja, wie gesagt, was ist mit JSON? Noch nie damit gearbeitet? Dann wird es dringend Zeit!

Der Server gibt einfach einen JSON-String zurück und jQuery wandelt das gleich automatisch in ein JS-Objekt um. Da musst du noch nicht mal was dafür tun.

PHP
PHP:
<?php
echo json_encode(array('id' => 123, 're_id' => 321, 're_wo' => 'Berlin')) // ergibt: {"id":123,"re_id":321,"re_wo":"Berlin"}
?>

jQuery
Code:
$.ajax({
  url: 'json.php'
  success: function (data) {
    console.log(data) // {id:123, re_id:321, re_wo:'Berlin}
  }
});
 
Zuletzt bearbeitet:
Zurück
Oben