Node.js(Express.jsを使用)を使用して、サーバーからクライアントビューにJSONデータオブジェクトを渡します。
JSONオブジェクトをビューに直接レンダリングすると、期待どおりにページに表示されるJSONオブジェクトが表示されます(これは機能します)。
pageprovider.findAllTag( function(error, pages){
res.send(pages);
})
そして、私の出力は次のようになります(はるかに大きく、多くのネストされたobj)
{"green":{"title":"green","pagesContaining": ""}}
次のようにジェイドビューに渡そうとすると、次のようになります。
pageprovider.findAllTag( function(error, tagsJSONObj){
//res.send(pages);
pageprovider.findAll( function(error, pages){
res.render('search_tags.jade', { locals: {
title: 'Search by Tags',
'pages': pages,
tagsJSON: JSON.stringify(tagsJSONObj) //pass the tags data as a JSON obj
}
});
}) //pageprovider.findAll
}) //pageprovider.findAllTag
問題
'tagsJSON'をビューに渡すと、出力にhtmlエンティティが含まれます。
var obj = jQuery.parseJSON( "{"name": 'value'}");
JQueryは'"'が気に入らないため、エラーをスローします。Nodeに適切な引用符を提供させる、またはjQueryにこの形式を受け入れるようにするにはどうすればよいですか?
何かご意見は?