1

我正在尝试将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 控件一起使用,该组件被简单地编写为仅与少数受支持的控件配合使用?

4

1 回答 1

1

我找到了答案:您需要使用editorParams. 此参数是具有赋予编辑器的属性的对象。它没有直接记录在 Dojo 文档中,但在示例中使用。

带有 InlineTextEdit 的工作组合框:

  new InlineEditBox({
    editor: ComboBox,
    editorParams: {
      store: new Memory({data: items}),
      searchAttr: 'name'
    }
  }, 'type').startup()  
于 2014-06-13T09:48:57.683 回答