jQuery MiniUI

 找回密码
 立即注册
查看: 2350|回复: 2
打印 上一主题 下一主题

获取datagrid中mini-combobox的text值 [复制链接]

Rank: 1

跳转到指定楼层
楼主
发表于 2017-3-2 14:51:38 |只看该作者 |倒序浏览
本帖最后由 xiaolinzxcvb 于 2017-3-2 14:58 编辑

代码如下:
<div id="dgDrug" class="mini-datagrid" style="width:100%;height:95%;" allowcelledit="true" allowcellselect="true" multiselect="true" showpager="false"
                                 editnextonenterkey="true" editnextrowcell="true" >
                                <div property="columns">
                                    <div type="checkcolumn"></div>
                                    <div width="30" headeralign="center" align="center" field="Dosage">剂量</div>
                                    <div width="30" headeralign="center" align="center" field="DosageUnitName">单位</div>
                                    <div width="55" headeralign="center" align="center" field="FreqId" type="comboboxcolumn" autoshowpopup="true">
                                        频率
                                        <input id="comboFreq" property="editor" class="mini-combobox" style="width:100%;" textfield="Name" valuefield="Id" url="@Url.Action("GetFreqList")" />
                                    </div>                                    
                                </div>
                            </div>


JS获取结果:
            dgDrug.accept();
            data.DrugList = dgDrug.getData();


但是我只取到了选择更新后的value值,里边的text还是以前的文本值,没有获取到更新后的文本值。
通过id获取getText()和getValue()都是空。

请问怎么获取,谢谢~~

Rank: 8Rank: 8

沙发
发表于 2017-3-2 15:44:56 |只看该作者
表格数据里面没有下拉的text字段的数据,我们表格绘制的时候只是根据预存的下拉数据里面去用值把文本替换出来,数据里还是没有的。

你要获取值,可以两种方法
1 获取combobox的数据源中id和text的对应关系,再根据获取到id去里面找到text.
2 不用type="comboboxcolumn",用field+displayField,这种情况你的这列数据就有2个字段,1个储存值1个储存文本,相应的初始加载的时候你也需要2个字段都提供

Rank: 1

板凳
发表于 2017-3-2 17:10:06 |只看该作者
第一种 需要缓存数据源,否则会去访问数据库,增加连接负担;
第二种 在查询时已经赋值,经过修改后也会取到该值。

已经用第二种方法实现,多谢指教~~

Archiver|普加软件

GMT+8, 2024-7-7 20:05 , Processed in 1.037021 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部