在Div中显示json花括号,显示json结果

时间:2016-11-06 20:22:53

标签: jquery

我有一个Jquery脚本,它对数据表进行查找并返回结果。

但是,当我在DIV中显示结果时,还会显示json数据周围的花括号。任何人都可以看到我出错的地方。

我的剧本:

$(document).ready(function()
{
$('#board').change(function(){
    $.get('check_override_image.php', { RecordID: form2.board.value },
    function(result) {
        $('#size').html(result).show();
    });
});
});

Json的结果是:

{"imagesizes":[{"DisplayWidth":"1080","DisplayHeight":"1920"}]}

我正在使用

显示结果
<div id="size"></div>

我要显示的是DisplayWidth:1080,DisplayHeight:1920删除所有括号和引号。

这可能。

非常感谢你的时间。

2 个答案:

答案 0 :(得分:1)

您必须手动删除部分对象

&#13;
&#13;
var result = {"imagesizes":[{"DisplayWidth":"1080","DisplayHeight":"1920"}]};

var html   = Object.keys( result.imagesizes[0] ).map(function(key) {
	return key + ':' + result.imagesizes[0][key];
}).join(', ');

$('#size').html(html).show();
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="size"></div>
&#13;
&#13;
&#13;

如果ajax调用返回正确的标题,结果将被解析为一个对象,否则你有JSON,需要JSON.parse,比如

$(document).ready(function() {
    $('#board').change(function(){
        $.get('check_override_image.php', {RecordID:form2.board.value}, function(json) {
            var result = JSON.parse(json);
            var html   = Object.keys( result.imagesizes[0] ).map(function(key) {
                return key + ':' + result.imagesizes[0][key];
            }).join(', ');

            $('#size').html(html).show();
        });
    });
});

答案 1 :(得分:1)

您需要JSON.parse()然后正常访问键值。

见下面的例子:

result = JSON.parse(result);
$('#size').html("DisplayWidth: " + result["imagesizes"][0]["DisplayWidth"] 
            + ", DisplayWidth: " + result["imagesizes"][0]["DisplayWidth"]).show();