相关疑难解决方法(0)

Node.js JSON.stringify()导致" 在输出中.无法用Jquery解析

我使用Node.js(使用Express.js)将JSON数据对象从服务器传递到客户端视图.

当我将JSON对象直接呈现给视图时,我按预期获得页面上显示的JSON对象(此工作):

pageprovider.findAllTag( function(error, pages){
    res.send(pages);
})
Run Code Online (Sandbox Code Playgroud)

我的输出看起来像这样(更大,许多嵌套的obj)

{"green":{"title":"green","pagesContaining": ""}}
Run Code Online (Sandbox Code Playgroud)

当我尝试将它传递给我的Jade View时:

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
Run Code Online (Sandbox Code Playgroud)

问题
当我将'tagsJSON'传递给视图时,输出包含html实体:

var obj = jQuery.parseJSON( "{"name": 'value'}");
Run Code Online (Sandbox Code Playgroud)

JQuery抛出一个错误,因为它不喜欢'"'.我如何让Node给我正确的引用,或让jQuery接受这种格式?

有什么想法吗?

jquery json node.js express pug

21
推荐指数
4
解决办法
7万
查看次数

如何将JSON数据导入Razor视图脚本块

我只是想从我的控制器(使用Razor语法的MVC3)到客户端浏览器中获取一个JSON字符串...

在My Controller中,我使用包含int和list的简单对象(test)来完成此操作.

var jasonData = new JavaScriptSerializer().Serialize(test);
ViewBag.JasonData = jasonData;
Run Code Online (Sandbox Code Playgroud)

在视图中我这样做:

<script type="text/javascript">
    var initialData = @(ViewBag.JasonData);
</script>
Run Code Online (Sandbox Code Playgroud)

Visual Studio显示数据看起来很好,但当它在浏览器中结束时,它具有围绕所有数据的转义代码,这是不好的.

&var initialData = {&quot;DateId&quot;:32,&quot;Scores&quo ....
Run Code Online (Sandbox Code Playgroud)

这应该很容易!我究竟做错了什么??

json asp.net-mvc-3

4
推荐指数
1
解决办法
5532
查看次数

标签 统计

json ×2

asp.net-mvc-3 ×1

express ×1

jquery ×1

node.js ×1

pug ×1