1

この JSON オブジェクト (Google Books API から) のデータを HTML テンプレートに入れようとしています。JSON は次のようになります。

{
 "kind": "books#volumes",
 "totalItems": 4,
 "items": [
  {
   "kind": "books#volume",
   "id": "LcQXAAAAYAAJ",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/LcQXAAAAYAAJ",
   "volumeInfo": {
    "title": "The Arabian Nights",
    "authors": [
     "George Fyler Townesend"
    ]
   }
  },
  {
   "kind": "books#volume",

... 完全な JSON: http://goo.gl/993CL

私のテンプレート(jquery.tmpl経由)は次のようになります。

var markup = "<tr><td>${kind}</td><td>${totalItems}</td><td>${items.volumeInfo.title}</td></tr>";

ただし、実行すると、次の 3 つの列のうち最初の列のみが表示されます。

   <tr><td>result 1</td></tr>
   <tr><td>result 2</td></tr>
   <tr><td>result 3</td></tr>

$totalItems表示されないのはなぜですか?そして、タイトルを取得するための適切なパスは何ですか?

${items.volumeInfo[*].title}   ? 

これがフィドルです:http://jsfiddle.net/khcsq

4

1 に答える 1

2

あなたはただすることはできませんitems.volumeInfoeachでループを実行する必要がありますitems

var markup = "{{each items}}<tr><td>${volumeInfo.title}</td></tr>{{/each}}";

ここを参照してください:http://jsfiddle.net/khcsq/3/

于 2012-06-08T17:34:13.957 に答える