jQuery MiniUI

标题: datagrid 中的combobox显示问题 [打印本页]

作者: ershixiong    时间: 2013-9-23 13:55:29     标题: datagrid 中的combobox显示问题

code eg:
<div id="datagrid1"... >
        <div property="columns">      
            <div type="comboboxcolumn" autoShowPopup="true"  field="test" width="100" allowSort="true"  align="center" headerAlign="center">性别
                <input property="editor" class="mini-combobox" id="combobox1"        
name="combobox1" style="width:100%;"  />               
            </div>                                      
        </div>
</div>

js:
   combobox1.load("url")....

下拉数据可以正常显示,但选过以后div没有显示。设置不对么?

作者: factory    时间: 2013-9-23 14:19:01

是不是你的combobox没有设置valueField和textField?
默认分别是id和text,如果你的下拉数据不是这2个的话,需要分别设置下
作者: ershixiong    时间: 2013-9-23 15:30:21

factory 发表于 2013-9-23 14:19
是不是你的combobox没有设置valueField和textField?
默认分别是id和text,如果你的下拉数据不是这2个的话,需 ...

应该不是这个问题吧。后台传过来的json数据是:id:xxx,text:yyy的
作者: ershixiong    时间: 2013-9-23 15:39:28

ershixiong 发表于 2013-9-23 15:30
应该不是这个问题吧。后台传过来的json数据是:id:xxx,text:yyy的

只是显示问题,保存的时候下拉选择的值。已经有保存到数据库
<div type="comboboxcolumn"
<input property="editor" class="mini-combobox" data="${data}"/>
编辑时正常显示
通过combo.load("url"),就下拉之后显示都是空白。
作者: factory    时间: 2013-9-23 15:56:05

ershixiong 发表于 2013-9-23 15:39
只是显示问题,保存的时候下拉选择的值。已经有保存到数据库

你先看下这个例子,把这个表格简化成只有国家这一列,并且操作,显示都正常,然后基于这个表格,改成你的这个下拉列,看看到底是什么区别.

另外,mini.get(id).load(url)
这样做,对于单元格编辑的表格编辑器是肯定不行,因为单元格编辑器,也就是你的combobox,只有在处于编辑状态的时候才会被创建.这样做的目的是为了性能,因为表格有很多的单元格,如果全部都实时创建好编辑器,那么单元格过多的话,会导致页面性能很差,甚至卡死

如果确实需要获取编辑器对象的话,那么监听表格的oncellbeginedit事件
oncellbeginedit="oncellbeginedit"
function oncellbeginedit(e){
    var editor = e.editor;
}
这个editor就是你当前编辑的单元格的编辑器了.然后再具体参考这个编辑器控件的API操作他




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2