2011-11-16 4 views
0

Je renvoie des données JSON à partir de l'action d'un contrôleur.Données Decode Json renvoyées par le contrôleur ASP.NET MVC 3

Sur le client, j'utilise des modèles jQuery où je lient les données comme suit:

var result = $("#jobsTmpl").tmpl(results.data); 
$("#jobsContainer").empty().append(result); 

Les données renvoyées du serveur contient P balises, j'ai remarqué qu'ils sont affichés sous forme de balises HTML codées.

Comment puis-je décoder les données renvoyées?

Je place un code JavaScript dans un fichier externe, donc je ne serai pas en mesure d'utiliser l'aide @ HTML.Raw().

Merci


j'ai utilisé cela, mais lors de la vérification sur la page, j'ai remarqué le HTML est quelque chose comme:

"

consequat te olim letalis Premo ad hos olim odio olim indoles ut venio iusto. euismod, sagaciter diam neque antehabeo blandit, jumentum transverbero luptatum. Lenis vel diam praemitto Molis usitas Camur, nostrud eros OPE verto epulae ad feugiat. suscipit Modo magna letalis Amet et Tego accumsan facilisi, meus. Vindico luptatum blandit ulciscor mos caecus praesent sed meus velit si quis lobortis praemitto, uxor

"

Notez les guillemets! Pourtant, < p> tags sont affichés comme des balises et ne sont pas en cours d'exécution!

c'est le JSON retour:

{"data": 
[ 
    { 
     "Title":"Need a Website?", 
     "Body":"\u003cp\u003eConsequat te olim letalis premo ad hos olim odio olim indoles ut ve \u003c/p\u003e" 
    } 
] 

}

+1

duplication possible de [entités HTML de décodage Jquery] (http://stackoverflow.com/questions/1147359/jquery-decode-html-entities) – Blazemonger

Répondre

1

J'ai résolu ce problème dans la configuration jQuery modèle Plugin:

{{Body html}}

De cette façon, le texte sera décodé et affiché correctement .

+0

Veuillez accepter votre propre réponse pour la faire remarquer par d'autres personnes qui voient la discussion! :) –

2

En supposant que je l'ai bien compris votre question, votre réponse JSON doit être inséré dans la page par jQuery, donc le @HTML.Raw() aide MVC est pas pertinent ici.

Essayez le code suivant:

var result = $("#jobsTmpl").html(results.data); 
Questions connexes