是否可以将.length应用于Titlepane

时间:2013-01-11 17:46:25

标签: javascript dojo

我想知道是否可以将.length应用于Titlepane。例如,如果我在对象数组中有一个名称列表&我希望为每个名称创建一个标题窗格:

     var html = '';
         for (var i = 0; i < data.length; i++)
         html += data[i].Name+'<br>';
         targetNode.innerHTML = html;

此时循环将只显示列表中的所有名称。因此,是否可以为每个名称创建一个标题窗格。要作为内容放在里面的名字?

如果有人就我​​如何做到这一点有任何例子或建议,那就太棒了。

编辑:

    var xhrArgs = {
url: "http://131.41.28.41:3000/pages.json",
handleAs: 'json',
timeout : 2000,

load: function(data){

 for (var i = 0; i < data.length; i++) {
var titlePane = new TitlePane({
  title: 'Title Pane ' + i,
  content: '<div>' + data[i].Name + '</div>'
});
titlePane.placeAt(dom.byId('ok'));
}
  },
error: function(error){
  targetNode.innerHTML = "An unexpected error occurred: " + error;
  }
 };

 // Call the asynchronous xhrGet
 var deferred = dojo.xhr.get(xhrArgs);
 });

 });

1 个答案:

答案 0 :(得分:0)

确实可以为数组中的每个对象创建一个新的标题窗格:

require(['dijit/TitlePane'],function(TitlePane){
  for(var i=0; i<data.length;i++){
    var titlePane = new TitlePane({
      title: 'Title Pane '+i,
      content:'<div>'+data[i].Name+'</div>'
    });
    titlePane.placeAt(/* dom node where all titlepanes should be placed */);
  }
});

有关dijit TitlePane的更多信息,请查看reference guide

可以找到这个概念的工作jsfiddle here