我试图使用InlineEditBox与以下dijit/form/ComboBox
:
var items = [
{name: 'new'},
{name: 'processed'},
{name: 'approved'},
{name: 'running'},
{name: 'archived'}
]
new ComboBox({
store: new Memory({data: items}),
searchAttr: 'name',
style: 'width: 200px;'
}, 'status').startup()
我的第一个"天真"方法是:
new InlineEditBox({
store: new Memory({data: items}),
searchAttr: 'value',
style: 'width: 200px;',
editor: ComboBox
}, 'status').startup()
作为效果,显示了内联框,您可以单击它,但显示了空的ComboBox。我尝试了Nabble论坛上的一个方法:
new InlineEditBox({
editor: new ComboBox({
store: new Memory({data: items}),
searchAttr: 'value',
style: 'width: 200px;',
})}, 'status').startup()
但是,它不能很好地工作。
我的问题:是否有一种方法可以将dijit/InlineEditBox
与dijit控件一起使用,而不是简单的文本编辑器,该组件只是简单地编写为仅与少数支持的控件合作?
我找到了一个答案:你需要使用editorParams
。此参数是具有赋予编辑器的属性的对象。它没有直接记录在Dojo文档中,但在示例中使用了它。
InlineTextEdit:
new InlineEditBox({
editor: ComboBox,
editorParams: {
store: new Memory({data: items}),
searchAttr: 'name'
}
}, 'type').startup()