2016-04-04 5 views
5

Ho un requisito in cui in I dati JSON da backend e devo mostrare che in textarea.currently, i dati arrivano ma non sono formattati e convalidati.OraCome posso convalidare e abbellire JSON attraverso un plugin jquery/javascript

1) Come posso abbellire JSON nell'area di testo? 2) Come posso convalidarlo prima di salvare?

ho cercato Tutti i javascript/plugins jQuery ma non sto ottenendo quello che want.i voglio qualcosa di simile JSLint

Grazie in anticipo

risposta

4

È possibile utilizzare il seguente per verificare che una stringa è una rappresentazione valida di un oggetto JSON:

function parseJson(str) { 
    try { 
     return JSON.parse(str); 
    } 
    catch (err) { 
     return false; 
    } 
} 

Usage:

var parsed = parseJson(someInput); 
if (parsed === false) { 
    // Invalid json 
} 

Se inoltre è necessario convalidare l'oggetto utilizzando alcune regole personalizzate (ad esempio "I hai bisogno che il tuo oggetto abbia attributi X e Y "), dai un'occhiata a JsonSchema.

+0

Grazie a @christophetd dopo così tanti sforzi ha funzionato ..;) –

15

Usa JSON.stringify(object, 0, 4) con il parametro spazio per una stringa JSON formattato.

var object = [{ "stop_id": 70021, "stop_name": "CALTRAIN - 22ND ST STATION", "stop_lat": 37.757692, "stop_lon": -122.392318, "zone_id": 3329 }, { "stop_id": 70022, "stop_name": "CALTRAIN - 22ND ST STATION", "stop_lat": 37.757692, "stop_lon": -122.392318, "zone_id": 3329 }, { "stop_id": 70151, "stop_name": "CALTRAIN - ATHERTON STATION", "stop_lat": 37.464458, "stop_lon": -122.198152, "zone_id": 3331 }]; 
 
document.write('<pre>' + JSON.stringify(object, 0, 4) + '</pre>');

+1

Bello! Non ne ho mai sentito parlare – christophetd

+1

Grazie @Nina ha funzionato .. :) –