0

JSON結果オブジェクトを解析し、ウィジェットでhtmlテンプレートを使用して表示しようとしています。

jsonはこんな感じ

 Result": [
{
    "Website": "Testing ",
    "Description": "Content from yahoo ",


    "LinkGroup": {
        "entry": [
            {
                "linkType": "information",
                "Link": {
                    "title": "Test1",
                    "url": "http://yahoo.com",
                    "description": "my Link Description"
                }
            },
            {
                "linkType": "news link",
                "Link": {
                    "title": "Test 2",
                    "url": "http://www.yahoo.com/news link...",
                    "description": "news link Link Description"
                }
            }
        ]
    }
}, 
{
    "Website": "Testing 2",
    "Description": "Content from google ",


    "LinkGroup": {
        "entry": [
            {
                "linkType": "information",
                "Link": {
                    "title": "Test1",
                    "url": "http://google.com",
                    "description": "my Link Description"
                }
            },
            {
                "linkType": "news link",
                "Link": {
                    "title": "Test 2",
                    "url": "http://www.google.com/news link...",
                    "description": "news link Link Description"
                }
            }
        ]
    }
},

以前は、エントリ アイテムのみを解析して、テンプレート化されたウィジェットで使用できました。ここで、ウィジェット内で Web サイトと説明オブジェクトを使用したいと考えています。エントリ配列オブジェクトの代わりに、結果オブジェクトを解析して、エントリにアクセスしようとしました。コンソール ログを見ると、エントリ値を取得しようとすると停止することがわかります。最初にWebサイトと説明を取得してから、その中にエントリ項目を追加できるように、それを解析する方法を考えています。これは私のHTMLウィジェットコードです

                 <div><span title="${Link.description}">${Link.description</span>/div> <br />
              <a href="${Link.url}">${Link.title}</a><br />

そして、このコードでjsonを解析します

                 request("js/my/data/sample.json", {
                handleAs: "json"}).then(function(jsonResults){ 
                arrayUtil.forEach(jsonResults.LinksGroup, function(List) 
              {arrayUtil.forEach(List.LinksGroup.entry, function(Ientry){
               var widget = new support(Ientry).placeAt(authorContainer);

               });});
4

1 に答える 1

0

私は答えを見つけました。トリックを行った entry オブジェクトの前に、配列内で別のウィジェットを使用しました。

于 2013-05-01T04:00:09.533 に答える