Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将json字符串转换为html表?_Javascript_Jquery_Json - Fatal编程技术网

Javascript 如何将json字符串转换为html表?

Javascript 如何将json字符串转换为html表?,javascript,jquery,json,Javascript,Jquery,Json,如何将下面的json数据转换为页面中的html表格元素 我的数据每次都来自这个url,我不能在页面或脚本中定义静态json数据 当页面加载并从url读取数据时,我想在页面中创建简单的表…这里有一个简单的解决方案满足您的需要 var $tbody = $('#table').find('tbody'); var $thead = $('#table').find('thead'); $thead.append($('<tr />').append($('<th />').

如何将下面的json数据转换为页面中的html表格元素

我的数据每次都来自这个url,我不能在页面或脚本中定义静态json数据


当页面加载并从url读取数据时,我想在页面中创建简单的表…

这里有一个简单的解决方案满足您的需要

var $tbody = $('#table').find('tbody');
var $thead = $('#table').find('thead');

$thead.append($('<tr />').append($('<th />').text('id')).append($('<th />').text('Name')).append($('<th />').text('Rate')).append($('<th />').text('Date')).append($('<th />').text('Time')))

$.each(data.query.results.rate, function (i, el) {
    $tbody.append($('<tr />').append($('<td />').text(el.id)).append($('<td />').text(el.Name)).append($('<td />').text(el.Rate)).append($('<td />').text(el.Date)).append($('<td />').text(el.Time)))
})
其中数据是您的JSON


如果不想使用外部JS库,您可以简单地遍历数组并构建一个表。 下面是为您的需求构建表的示例

首先,需要创建一个表DOM元素:

var table = $("<table/>"); // create a table HTML DOM element
这是你的电话号码


我希望您可以使用jQuery。如果不是,那么您可以轻松地将此代码转换为vanilla JS。

尝试以下Ajax方法:

var url="https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20(%22USDEUR%22%2C%20%22USDJPY%22%2C%20%22USDBGN%22%2C%20%22USDCZK%22%2C%20%22USDDKK%22%2C%20%22USDGBP%22%2C%20%22USDHUF%22%2C%20%22USDLTL%22%2C%20%22USDLVL%22%2C%20%22USDPLN%22%2C%20%22USDRON%22%2C%20%22USDSEK%22%2C%20%22USDCHF%22%2C%20%22USDNOK%22%2C%20%22USDHRK%22%2C%20%22USDRUB%22%2C%20%22USDTRY%22%2C%20%22USDAUD%22%2C%20%22USDBRL%22%2C%20%22USDCAD%22%2C%20%22USDCNY%22%2C%20%22USDHKD%22%2C%20%22USDIDR%22%2C%20%22USDILS%22%2C%20%22USDINR%22%2C%20%22USDKRW%22%2C%20%22USDMXN%22%2C%20%22USDMYR%22%2C%20%22USDNZD%22%2C%20%22USDPHP%22%2C%20%22USDSGD%22%2C%20%22USDTHB%22%2C%20%22USDZAR%22%2C%20%22USDISK%22)&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=";


var $tbody = $('#table').find('tbody');
var $thead = $('#table').find('thead');
$.ajax({
url: url,
}).done(function(data) {
    var ObjectKeys=Object.keys(data.query.results.rate[0]);
    var row="<tr>";
    $.each(ObjectKeys, function (i, key) {
        row+="<th>"+key+"</th>";
    });
    row+="</tr>";
 $thead.append(row);

$.each(data.query.results.rate, function (i, el) {
    $tbody.append($('<tr />').append($('<td />').text(el.id)).append($('<td />').text(el.Name)).append($('<td />').text(el.Rate)).append($('<td />').text(el.Date)).append($('<td />').text(el.Time)).append($('<td />').text(el.Ask)).append($('<td />').text(el.Bid)));
});

})

您尝试的代码在哪里?请阅读JSON,然后阅读它,最后使用创建一个表。
for (var i = 0; i < obj.query.results.rate.length; i++) // iterate through items
{
    var item = obj.query.results.rate[i];

    var tr = $("<tr/>"); // create a row
    for (var key in item)
    {
        $("<td/>").text(item[key]).appendTo(tr); // append cells to a row
    }

    table.append(tr); // append row to a table
}
$("body").append(table);
var url="https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20(%22USDEUR%22%2C%20%22USDJPY%22%2C%20%22USDBGN%22%2C%20%22USDCZK%22%2C%20%22USDDKK%22%2C%20%22USDGBP%22%2C%20%22USDHUF%22%2C%20%22USDLTL%22%2C%20%22USDLVL%22%2C%20%22USDPLN%22%2C%20%22USDRON%22%2C%20%22USDSEK%22%2C%20%22USDCHF%22%2C%20%22USDNOK%22%2C%20%22USDHRK%22%2C%20%22USDRUB%22%2C%20%22USDTRY%22%2C%20%22USDAUD%22%2C%20%22USDBRL%22%2C%20%22USDCAD%22%2C%20%22USDCNY%22%2C%20%22USDHKD%22%2C%20%22USDIDR%22%2C%20%22USDILS%22%2C%20%22USDINR%22%2C%20%22USDKRW%22%2C%20%22USDMXN%22%2C%20%22USDMYR%22%2C%20%22USDNZD%22%2C%20%22USDPHP%22%2C%20%22USDSGD%22%2C%20%22USDTHB%22%2C%20%22USDZAR%22%2C%20%22USDISK%22)&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=";


var $tbody = $('#table').find('tbody');
var $thead = $('#table').find('thead');
$.ajax({
url: url,
}).done(function(data) {
    var ObjectKeys=Object.keys(data.query.results.rate[0]);
    var row="<tr>";
    $.each(ObjectKeys, function (i, key) {
        row+="<th>"+key+"</th>";
    });
    row+="</tr>";
 $thead.append(row);

$.each(data.query.results.rate, function (i, el) {
    $tbody.append($('<tr />').append($('<td />').text(el.id)).append($('<td />').text(el.Name)).append($('<td />').text(el.Rate)).append($('<td />').text(el.Date)).append($('<td />').text(el.Time)).append($('<td />').text(el.Ask)).append($('<td />').text(el.Bid)));
});

})