我想以编程方式为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");