Auffüllen einer jQuery Select2() Kontrolle mit JSON-Daten aus PHP

Ich getan haben die gleiche Sache mehrmals (auch am gleichen Projekt eigentlich) und es funktioniert gut. Ich habe ein Problem nur mit dieser Instanz des gleichen Codes.
Zunächst wähle ich einige Daten aus einer db-Tabelle:

$azioni = $pdo->query("SELECT id_az, concat_ws('-',Descrizione, RGE) as descrizione 
                       FROM azioni_head 
                          JOIN sofferenze ON sofferenze.id_soff = azioni_head.id_soff
                        ORDER BY Descrizione")
               ->fetchAll(PDO::FETCH_ASSOC);

Das gibt mir ein array wie folgt aus (nur die ersten paar items):

Array
(
    [0] => Array
        (
            [id_az] => AZ000000126
            [descrizione] => Acciaierie Weissenfels S.p.A.-n/d
        )

    [1] => Array
        (
            [id_az] => AZ000000017
            [descrizione] => Acofer S.p.A.-n/d
        )
)

Ich dann konvertieren Sie das array in ein Json-array zu tun:
var azioni = <?php echo json_encode($azioni); ?>;
und schließlich habe ich das Auffüllen Select2 mit diesen Daten, aber dieses mal das select2 hat keine Elemente im inneren.
Wenn ich versuche, um das Feld anzuzeigen, sobald es codiert ist mit alert(azioni.join( )); ich bekommen:

[object object],[object object],[object object],[object object],

Schließlich habe ich ausgeführt:

$('#cod_az').select2({ placeholder: "Scegli", data: azioni });

Was ist falsch? Warum kann ich nicht verwenden Sie dieses array zu füllen Select2 mit den Daten? Es funktioniert in anderen Abschnitt meiner Bewerbung!

Bearbeiten
dies ist das Ergebnis der console.log(azioni) im firebug:

[
Object { id_az="AZ000000126",  descrizione="Acciaierie Weissenfels S.p.A.-n/d"}, 
Object { id_az="AZ000000017",  descrizione="Acofer S.p.A.-n/d"}, 
Object { id_az="AZ000000039",  descrizione="ADANI SAS DI ADANI PAOLO & C. S.p.A.-n/d"}, 
Object { id_az="AZ000000019",  descrizione="Administration Speciale ...NG S.A. en faillite-n/d"}
]
  • das gleiche Ergebnis, wie mit join
  • console.log(azioni) und schauen Sie in Ihrem Javascript-Konsole. alert() ist nutzlos für die Fehlersuche.
  • So... Frage beantwortet?
  • Nein. Dieses json-array ist die einzige, die ich nicht verwenden können, zum Auffüllen der Daten in den select2 (alle anderen Bedingungen gleich sind), während der gleiche code funktioniert in anderen Seiten auf der gleichen Anwendung!
  • Gut, da das array ist offensichtlich in Ordnung, und wir sehen nicht, was Sie tun mit ihm, wir können nicht viel helfen an dieser Stelle weiter.
  • Das Ergebnis erhalten Sie von dieser: alert(azione[0]["id_az"]) und alert(azione[0]["descrizone"])?
  • sorry! vergessen eine Zeile code in meiner Frage! meine Schuld!
  • "Die Objekte, die der Benutzer auswählen kann, übergeben werden sollen, als array mit jedes Objekt mit id und text - Eigenschaften." select2.github.io/options.html
  • whoah! nicht bemerkt, dass! dies löst das Problem. Wird Sie es zu einer Antwort, damit kann ich markieren Sie es als in der Nähe?

InformationsquelleAutor Lelio Faieta | 2015-07-06
Schreibe einen Kommentar