jQuery MiniUI

标题: datagrid自定义元素问题 [打印本页]

作者: delacroix821026    时间: 2014-7-3 13:35:01     标题: datagrid自定义元素问题

<div id="datagrid" class="mini-datagrid"
         style="width: auto; height: 285px" allowresize="false"
         multiselect="true">
        <div property="columns">
            <div type="checkcolumn"  width="4%"></div>
            <div field="code1" headeralign="center" align="center" width="20%">单位名称</div>
            <div field="code2" valuesetcode="CS0000000513" headeralign="center" align="center" width="20%"  renderer="onValueSetRenderer">单位地址</div>
</div>
    </div>   

该如何在onValueSetRenderer里获取valuesetcode的值CS0000000513?
作者: zhq3k    时间: 2014-7-3 13:39:48

取datagrid.columns[2].valuesetcode,试一下。
作者: felt    时间: 2014-7-3 13:44:46

你在列上定义这个想做什么
作者: delacroix821026    时间: 2014-7-3 13:47:37

zhq3k 发表于 2014-7-3 13:39
取datagrid.columns[2].valuesetcode,试一下。

这个方法试过了.undefined.作用是.数据库里存的code.需要转中文.所以.需要1个主表的code.再通过字段寻找中文
作者: delacroix821026    时间: 2014-7-3 13:54:25

本帖最后由 delacroix821026 于 2014-7-3 13:56 编辑
felt 发表于 2014-7-3 13:44
你在列上定义这个想做什么


在作值集框架.统一提供js.
function onValueSetRenderer(e){
var valueSetCode = "来自列定义的主表id";
    var dataCode = e.value;
    $.ajax({
        url: "/ValueSet/getValueSetInCache?valueSetCode=" + valueSetCode + "&dataCode=" + dataCode,
        success: function (text) {
            e.cellHtml = text;
        }
    });
}

后台数据结构为主子表.比如,主标code="cs0000001",description="公司地址"
子表code="cs00001_1",description="上海",code="cs00001_2",description="广州"
作者: felt    时间: 2014-7-3 13:56:37

delacroix821026 发表于 2014-7-3 13:54
在作值集框架.统一提供js.
function onValueSetRenderer(e){
var valueSetCode = "来自列定义的主表id";

绘制前把数据取出来,不然你绘制一个单元格跑一次ajax,性能是个大问题
作者: delacroix821026    时间: 2014-7-3 13:59:21

felt 发表于 2014-7-3 13:56
绘制前把数据取出来,不然你绘制一个单元格跑一次ajax,性能是个大问题

谢谢提醒.不过.自定义一个参数,也算比较常见的需求了吧.总不能所有都用hidden来...
作者: felt    时间: 2014-7-3 13:59:59

delacroix821026 发表于 2014-7-3 13:59
谢谢提醒.不过.自定义一个参数,也算比较常见的需求了吧.总不能所有都用hidden来... ...

data-options={。。。}
作者: delacroix821026    时间: 2014-7-3 14:02:59

本帖最后由 delacroix821026 于 2014-7-3 14:04 编辑
felt 发表于 2014-7-3 13:59
data-options={。。。}


脚本就1份.或者换个思路.
function onValueSetRenderer(e,参数1,参数2) {
可否传参数.

试过renderer="onValueSetRenderer(this,'cs00000001')"失败
作者: factory    时间: 2014-7-3 14:25:01

delacroix821026 发表于 2014-7-3 14:02
脚本就1份.或者换个思路.
function onValueSetRenderer(e,参数1,参数2) {
可否传参数.

自定义属性只能通过data-options="{a:1,b:2}"

obj,a
obj.b 获取
作者: delacroix821026    时间: 2014-7-3 14:37:07

factory 发表于 2014-7-3 14:25
自定义属性只能通过data-options="{a:1,b:2}"

obj,a

已解决。thx




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