我有一个dojo增强型网格,我正在使用格式化程序在其中一列中显示一个按钮
{field: '_item', name: 'Update Data', formatter: dojo.hitch(context, this.getUpdateData), width: '165px' },
getUpdateData: function(rowItem) {
var button = new dijit.form.Button({
label: '<img src="/public/img/icon_texteditor.png" height="19px" width="19px"/>',
onClick: function(){
alert('hi');
}
});
return button;
}
这很有效。按钮已正确呈现,当我单击它时,它正确显示警告对话框。我想做的是显示一些文本/标签,然后显示网格单元格中的按钮。我已经尝试在格式化程序中创建一个div并尝试将按钮添加到div:
getUpdateData: function(rowItem) {
var divNode = dojo.create("div", { innerHTML: rowItem.someText });
var button = new dijit.form.Button({
label: '<img src="/public/img/icon_texteditor.png" height="19px" width="19px"/>',
onClick: function(){
alert('hi');
}
});
button.placeAt(divNode);
return divNode.innerHTML;
}
即使它正确呈现(文本显示在表格中的按钮之前),当我点击按钮时也没有任何反应。不会调用onClick事件处理程序。
我的问题是:如何在网格单元格中显示一些文本+一个按钮。
答案 0 :(得分:0)
这对我有用:
getUpdateData: function(rowItem) {
var cpane = new dojox.layout.ContentPane (
content: rowItem.someText;
});
var button = new dijit.form.Button({
label: '<img src="/public/img/icon_texteditor.png" height="19px" width="19px"/>',
onClick: function(){
alert('hi');
}
});
button.placeAt (cpane);
return cpane;
}