C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: Jsonデータの項目数に合わせてTableの行を追加し、Js


(過去ログ 126 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■75295 / inTopicNo.1)  Jsonデータの項目数に合わせてTableの行を追加し、Js
  
□投稿者/ shoi (1回)-(2015/03/10(Tue) 18:31:05)

分類:[JavaScript] 

Jsonデータの項目数に合わせてTableの行を追加し、Jsonデータを設定したいです。
現在のソースは
*javascript
$(document).ready(function () {

var url = "http://ooo";

$.get(url, function (json) {
※jsonデータの内容
{"年":"2020", "名前":"アメリカ", "読み":"あめりか"},
〜複数(データ数はランダム)〜
{"年":"2020", "名前":"日本", "読み":"にほん"}
});
});

・tabelのカラムは「年」「名前」「読み」にしたい

どのように実装したら良いか分かりません。
分かる方がいましたら、ご教授をお願いします
引用返信 編集キー/
■75296 / inTopicNo.2)  Re[1]: Jsonデータの項目数に合わせてTableの行を追加し、Js
□投稿者/ shoi (3回)-(2015/03/10(Tue) 18:43:59)
No75295 (shoi さん) に返信
> Jsonデータの項目数に合わせてTableの行を追加し、Jsonデータを設定したいです。
> 現在のソースは
> *javascript
> $(document).ready(function () {
>
> var url = "http://ooo";
>
> $.get(url, function (json) {
> ※jsonデータの内容
> {"年":"2020", "名前":"アメリカ", "読み":"あめりか"},
> 〜複数(データ数はランダム)〜
> {"年":"2020", "名前":"日本", "読み":"にほん"}
> });
> });

*HTML

<body>
<table id="sampleTable" class="tablesorter">
<thead>
<tr>
<th>名前</th>
<th>読み</th>
</tr>
</thead>
<tbody></tbody>
</table>
</body>

> ・tabelのカラムは「年」「名前」「読み」にしたい
>
> どのように実装したら良いか分かりません。
> 分かる方がいましたら、ご教授をお願いします
引用返信 編集キー/
■75299 / inTopicNo.3)  Re[2]: Jsonデータの項目数に合わせてTableの行を追加し、Js
□投稿者/ 魔界の仮面弁士 (224回)-(2015/03/10(Tue) 20:04:39)
No75295 (shoi さん) に返信
>・tabelのカラムは「年」「名前」「読み」にしたい 

と書いておきながら、HTML 側には

■No75296 (shoi さん) に返信
>         <thead>
>             <tr>
>                 <th>名前</th>
>                 <th>読み</th>
>             </tr>
>         </thead>

となっており、「年」列が無いみたいですが…。


年は無視して、「名前」「読み」を表示したいという意図だとしたら、

var data = [
  {"年":"2000", "名前":"米国", "読み":"あめりこ"},
  {"年":"2010", "名前":"英国", "読み":"ぶりてん"},
  {"年":"2020", "名前":"日本", "読み":"わのくに"}
];

のようなデータがあったとして、jQuery 指定でこんな感じ。

$(function(){
  var t = $("#sampleTable tbody");
  t.children().remove();
  for(var i = 0 ; i < data.length ; i++) t.append(
    $("<tr></tr>")
    .append($("<td></td>").text(data[i]["名前"]))
    .append($("<td></td>").text(data[i]["読み"]))
  );
});


あとはこのあたり。
https://teratail.com/questions/7554


「年」列も表示したいということであれば、同様にして thead も処理してみて下さい。

ヘッダ部指定のテキストを JSON データのキー名に使いたいという意図だとしたら、
th の中身を jQuery の .text() あたりで読み出して使えば OK です。
DOM で読み出す場合は、ブラウザによって使うプロパティが異なります。(innerText / textContent)

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -