Popolare campi di input con metodo $.getJSON

SAC07PA

Nuovo Utente
29 Dic 2008
11
0
1
Buongiorno,
Chiedo un aiuto nel risolvere il problema che qui sotto riporto e che probabilmente per molti di voi sarà banale.
Ho richiesto al database tramite il metodo $.getJSON e la relativo programma PHP di rimandarmi i record relativi al cognome, nome e numero di Id di 6 miei clienti. La richiesta va a buon fine, viene creato un array con 6 indici e 6 elementi composti da "element[0] = ID" element[1]=cognome ed element[2]=nome. Dopodichè visualizzo in una DIV di nome fr_dati il contenuto dell'array. IL PROBLEMA e che vorrei poter recuperare i dati di un singolo cliente (per poterlo modificare) facendo "click" sul rigo della DIV "fr_dati" dove sono riportati.
E' possibile? ed eventualmente come posso fare?
Ringrazio anticipatamente dell'aiuto che qualcuno (spero) vorrà darmi.

Codice:
$.getJSON ("registrazione2.php", function(data) {
                          $.each(data, function(index, element) {
                             $("#fr_dati").append("ID= "+element[0]+"  "+"Cognome= "+element[1]+"   "+"Nome= "+element[2]+"<br>");
                            
                              })
                        });
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, aggiungi un elemento e un evento per ogni riga
Codice:
$("#fr_dati").append("<p onclick='location.href=\"modifica.php?ID=" + element[0] + "\"'> qui tutti i dati della riga</p>");
puoi reindirzzare con location.href oppure richiamare un'altra funzione javascript.
 

SAC07PA

Nuovo Utente
29 Dic 2008
11
0
1
Ciao, aggiungi un elemento e un evento per ogni riga
Codice:
$("#fr_dati").append("<p onclick='location.href=\"modifica.php?ID=" + element[0] + "\"'> qui tutti i dati della riga</p>");
puoi reindirzzare con location.href oppure richiamare un'altra funzione javascript.
Buongiorno CRIRIC
Se invece di inserire "element[0]" nel tag <p>, lo volessi inserire in una casella di input come dovrei fare?
Grazie per una tua cortese risposta in merito
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
è semplice HTML
Codice:
<input type='text' value='" + element[0] + "'/>
forse non ho capito la domanda
 

SAC07PA

Nuovo Utente
29 Dic 2008
11
0
1
è semplice HTML
Codice:
<input type='text' value='" + element[0] + "'/>
forse non ho capito la domanda
Non mi sono spiegato bene io perchè avrei dovuto illustrare meglio il mio problema.
Praticamente vorrei,dopo avere recuperato i dati, immetterli in alcuni campi di input posizionati sul div "fr_dati", come per andare a ripopolare una form con i dati provenienti dal database, di cui il primo o l'ultimo campo mi dovrebbe servire a recuperare il numero di record da elemento[0] per sussessivamente andare ad interrogare il database ed eventualmente apportare modifiche o annullamenti ai dati immessi .
Il programma dovrebbe funzionare così:
immetto i dati e li memorizzo sul database, contemporaneamente li vedo nel Div "fr.dati".Ogni rigo visualizzato corrisponde ad un record, e in qualsiasi momento, posso, recuperando il numero di record modificare o annullare i suddetti dati.
Il mio problema quindi è quello di visualizzare i dati (elemento[1] [2] [3] e quello di recuperare il numero di record da elemento[0].
Il codice da te postato nella risposta funzionna bene e senza alcun problema "$("#fr_dati").append("<p onclick='location.href=\"modifica.php?ID=" + element[0] + "\"'></p>"); " però come faccio a visualizzare gli altri dati nei campi di input?.
Ti ringrazio nuovamente per il tuo interessamento.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Il succo è quello : crei un codice html come vuoi e lo passi alla funzione append()
Codice:
var form = "<form action='modifica.php' method='post'>";
form += "<input name='ID' type='hidden' value='" + element[0] + "'/>";
form += "Cognome : <input type='text' name='cognome' value='" + element[1] + "'/><br/>";
form += "Nome : <input type='text' name='nome' value='" + element[2] + "'/><br/>";
form += "<input type='submit' name='submit' value='modifica'/>";
form += "</form>";
$("#fr_dati").append(form);