【问题标题】:What is a better alternative to posting JSON results?发布 JSON 结果的更好选择是什么?
【发布时间】:2014-01-12 03:48:07
【问题描述】:

我正在创建一个股票小部件:http://jsfiddle.net/thetuneupguy/h6RB8/

$(function() {
    $.getJSON('http://query.yahooapis.com/v1/public/yql?q=SELECT%20*%20FROM%20yahoo.finance.quotes%20WHERE%20symbol%20in(%22GCF14.CMX%22%2C%22SIF14.CMX%22%2C%22PAH14.NYM%22%2C%22PLF14.NYM%22)&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=', function(data) {

        console.log(data.query.results.quote);
        $.each(data.query.results.quote,function(key,val){
            var items = [];
            $.each(val,function(name,value){
                items.push('<li>' +name+ ' : '+ value + '</li>');
            });
            $('<ul/>', {'class': 'my-new-list',html: items.join('')}).appendTo('#blk-1');
        });

    });
});

我想知道是否有更好的方法来显示我的结果,以便我可以对它们进行格式化/样式化以使其适合我的小部件设计。谢谢!

【问题讨论】:

  • 为所有元素分配类,以便用户可以使用 CSS 设置它们的样式。
  • @Barmar .my-new-list li 为元素设置样式有什么问题?我同意可以使用表格,或者将名称/值包装在 &lt;span&gt; 中以允许 CSS 选择器

标签: jquery html css json jquery-ui


【解决方案1】:

嘿,这对你有帮助吗?让我知道它是否有效:

http://answers.squarespace.com/questions/3388/how-can-i-access-and-style-json-content

【讨论】:

    【解决方案2】:

    看起来没人理解你 xD。在这里你有:

        $.each(data.query.results.quote, function(key, obj){
            var $tr = $('<tr/>', {'class': 'my-new-list'}).appendTo('#blk-1 table');            
            $tr.append($('<td/>').text(obj.Name || "-"));
            $tr.append($('<td/>').text(obj.Ask || "-"));
            $tr.append($('<td/>').text(obj.Bid || "-"));
            $tr.append($('<td/>').text(obj.Change || "-"));
            $tr.append($('<td/>').text(obj.ChangeinPercent || "-"));
        });
    

    如你所见,我们没有遍历列数,因为我们在表头中已经很好地定义了它们

    在这里工作:http://jsfiddle.net/edgarinvillegas/h6RB8/2/

    干杯,来自玻利维亚拉巴斯

    【讨论】:

    • 其他回复是我一直在寻找的,但你已经超越了。不过,我决定尝试一下您的答案,非常感谢!如果我想获取符号的各种名称并重命名它们,您提供的答案的最佳途径是什么(即 Gold Jan 14 --> Gold)?
    • 您的意思是动态填充表头标题?
    • 目前,每个符号都有一个名称,每个 .Name。我希望能够修改该名称并显示结果。因此,对于符号 GCF14.CMX,名称为 Gold Jan 14。我希望名称为 Gold。我需要更改每个符号的名称。
    猜你喜欢
    • 2021-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-03
    • 1970-01-01
    相关资源
    最近更新 更多