如何以编程方式将dojox.mvc.Output添加到dojox.mobile.ListItem



我想以编程方式为ListItem添加一个标签和值,我该怎么做?我不想对ListItem使用rightText。

     //   widgetId = "showUrl"
     dojo.empty(widgetId);
     var listItem = registry.byId(widgetId);
     if (listItem != undefined)
          listItem.destroy(true);
     listItem = new ListItem({}, widgetId);
     var labelOutput = dom.byId("urllabel");
     if (labelOutput == undefined) {
         labelOutput = dojo.create("div", {id: "urllabel"}, listItem.srcNodeRef);
     }
     console.log("labelOutput ", labelOutput);
     var output = new mvc.Output({ref: labelItem
                          }).placeAt(labelOutput);
     console.log("output ", output);
     //output.startup();

}

我尝试了上面的代码,但它没有显示ListItem中的标签url。

刚刚碰到这个页面。如果使用Dojo 1.8是一个选项,则Dojo 1.8允许使用API上的dojox/mvc/ListItem建立对dojox/ListItem的label属性(即ListItem中的文本)的数据绑定权限。所以你可以做一些类似的事情:

var labelItem = new Stateful(); // dojo/Stateful
registry.byId("li").set("label", at(labelItem, "value"));
labelItem.set("value", "The text");