jQuery MiniUI

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

Grid中添加Lookup Editor 的问题 [复制链接]

Rank: 1

跳转到指定楼层
楼主
发表于 2014-3-21 09:40:32 |只看该作者 |倒序浏览
问题如下




源码如下
<div id="datagrid1" class="mini-datagrid" style="width: 100%; border: 0px solid;" showfooter="false"  pagesize="40" allowResize="true" resultAsData="true"
            url="<%=this.ResolveUrl("~") %>data/equipment/LubricationServer.aspx?method=ListInspectionItem"  idField="id"  >
            <div property="columns">
            
                <div field="equname"  width="110" headeralign="center" align="center">设备名称</div>   
                <div field="EquCode" width="80"  headeralign="center" align="center" visible="false" >设备名称</div>
                             
                <div field="Position" width="110"  headeralign="center" align="center" >润滑部位</div>
                <div field="Mehtod" width="100" headeralign="center" align="center">方式</div>
                <div field="Point" width="50"  headeralign="center" align="center">点数</div>
                  
                <div field="PreValue" width="50"  headeralign="center" align="center">每点加注量</div>               
                <div field="AllValue" width="50" headeralign="center" align="center" >总共加注量</div>
               
                <div field="datetype1" width="50" headeralign="center" align="center">首次类型</div>
                <div field="IntRepType" width="50" headeralign="center" align="center" visible="false">首次类型</div>
                <div field="IntRepPeriod" width="50"  headeralign="center" align="center">首次周期</div>
               
                <div field="datetype2" width="50" headeralign="center" align="center">更换类型</div>
                <div field="RepType"  width="50"   headeralign="center" align="center" visible="false">更换类型</div>           
                <div field="RepPeriod" width="50"  headeralign="center" align="center">更换周期</div>           
                <div field="RepValue" width="50"   headeralign="center" align="center">更换量</div>   
                 
                <div field="datetype3" name="datetype3" width="50"   headeralign="center" align="center">补充类型</div>     
                <div field="AddType" width="50"    headeralign="center" align="center" visible="false">补充类型</div>           
                <div field="AddPeriod" width="50"  headeralign="center" align="center">补充周期</div>           
                <div field="AddValue" width="50"   headeralign="center" align="center">补充量</div>
                <div field="CBrand" name="CBrand" width="50"   headeralign="center" align="center" visible="false">润滑剂牌号</div>
                <div field="Brand"  name="Brand" width="80"   headeralign="center" align="center" >润滑剂牌号
                   <input property="editor" class="mini-lookup" style="width:100%;" id="lookup2" popup="#gridPanel"
                    grid="#datagrid2" textField="pcode" idField="pname" popupWidth="auto"/>
                </div>         
                <div field="usequa" width="50"   headeralign="center" align="center">使用量
                 <input property="editor" class="mini-textbox" style="width:100%;"  vtype="float" />
                </div>  
            </div>
         </div>
        <div id="gridPanel" class="mini-panel" title="header" iconCls="icon-add" style="width:300px;height:350px;" visible="false"
        showToolbar="true" showCloseButton="true" showHeader="false" bodyStyle="padding:0" borderStyle="border:0"  >
          <div id="datagrid2" class="mini-datagrid" style="width:100%;height:100%;" borderStyle="border:0" idField="pcode" pagesize="40"  showPageIndex="false"
       url="<%=this.ResolveUrl("~") %>data/equipment/LubricationServer.aspx?method=GetLubType&type=lubbrand" >
        <div property="columns">
      
           <div field="pname" width="120" headerAlign="center" align="center" >润滑油品牌</div>   
           <div field="pcode"  name="Brand" width="80"   headeralign="center" align="center" visible="false" >润滑剂牌号</div>
        </div>
      </div>
     </div>
请求版主大发慈悲帮我解决这个问题

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

沙发
发表于 2014-3-21 10:08:40 |只看该作者
1.显示不出来加displayField=“Brand_name”.
2.http://miniui.com/demo/#src=datagrid/rowedit_lookup.html
你参考下这个示例demo和你的代码对比下哪里有问题?

Rank: 1

板凳
发表于 2014-3-21 10:48:31 |只看该作者
lost 发表于 2014-3-21 10:08
1.显示不出来加displayField=“Brand_name”.
2.http://miniui.com/demo/#src=datagrid/rowedit_lookup.htm ...

不行啊,我加了之后还是没有显示出来,你的demo我昨天都看了,都一样啊
下面是我的js代码
  mini.parse();
    var path = '<%=this.ResolveUrl("~") %>';
    //列表加载
    var form = new mini.Form("#center");
    var crcHeight = document.getElementById("center").scrollHeight;
    var grid = mini.get("datagrid1");
    grid.setHeight("98%");
    grid.load(null,e1);

    function e1(e) {
        var s = 0;
        for (var i = 0; i < e.data.length; i++) {
            grid.beginEditRow(e.data);
            if (e.data.StockValue != null) {
                s += parseFloat(e.data.StockValue);
            }
        }
    }
        
    //润滑记录窗体
    var lbwindows = mini.get("lbwindows");
    var grid1 = mini.get("datagrid2");
    //grid1.load();

    //查询
    function search() {
        var equ = mini.get("equname").getValue();
        grid.load({ "equcode": equ }, e1);
    }
   
    //点击取消
    function cancelRow(id) {
        mini.get(id).hide();
    }

   
    function updateRow() {
        lub_status.value = "a_ll";
        var equcode = "";
        var brand = "";
        var value = "";
        var len = grid.data.length;
        var status = lub_status.value;
        var arr = grid.data;
        for (var i = 0; i < len; i++) {
            var rowData = grid.getEditRowData(grid.data);
            equcode += arr.EquCode + ",";
            brand += rowData.Brand + ",";
            value += rowData.usequa + ",";
        }

        $.ajax({
            url: path + "data/equipment/LubricationServer.aspx?method=LubricationListIE",
            data: {
                equcode: equcode,
                brand: brand,
                value: value,
                status: status
            },
            success: function(text) {
                if (text != "true") {
                    mini.alert(text);
                } else {
                    grid.load(null, e1);
                }
            }
        });
    }
    function onShowPopup(e) {
      
        grid1.load();
    }
    function onRowDblclick(e) {
        grid.commitEdit();
    }

请楼主指点

Rank: 8Rank: 8

地板
发表于 2014-3-21 11:59:01 |只看该作者
qiuaoyu 发表于 2014-3-21 10:48
不行啊,我加了之后还是没有显示出来,你的demo我昨天都看了,都一样啊
下面是我的js代码
  mini.parse() ...

lookup作为编辑,他有2个东西,一个value一个text
你有给列设置displayField了没?

如果你的列光有field,那么当编辑的时候,只是赋值给了lookup一个value, text没有,自然输入框里面什么都没

但其实value已经给到了,但是value你是看不到的

至于第二个问题,我不知道你是不是做了什么涉及全选的操作. 你自己检查检查你的代码

Rank: 1

5#
发表于 2014-3-21 14:29:49 |只看该作者
factory 发表于 2014-3-21 11:59
lookup作为编辑,他有2个东西,一个value一个text
你有给列设置displayField了没?

多谢版主的热情解答,问题已经解决,是后台传入的数据的问题,少个自增长的ID

Archiver|普加软件

GMT+8, 2024-11-25 12:56 , Processed in 1.067710 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部