jQuery MiniUI

 找回密码
 立即注册
楼主: 常常
打印 上一主题 下一主题

为什么得不到这个对象? [复制链接]

Rank: 2

11#
发表于 2012-10-26 14:22:27 |只看该作者
factory 发表于 2012-10-26 13:37
oncellbeginedit事件是表格事件,要写在表格上面的。
你的表格单元格的值是多少,弹出下拉框的时候回默认 ...

<div field="materialId"  class="mini-combobox"  width="25%" headerAlign="center" >办公用品
                <input property="editor" class="mini-combobox" id="materialId" name="materialId" textField="stationeryName" valueField="guid"
                                            onvaluechanged="liandong2();" />               
            </div>
                        <div field="amonut"   width="10%" allowSort="true" >数量
                <input property="editor" id="i-0-amonut" class="mini-spinner" minValue="0" />
            </div>        
            <div field="StationeryUnit" renderer="onActionRenderer" width="10%" headerAlign="center" allowSort="true" >单位
            </div>
function onActionRenderer(e) {
                var grid = e.sender;
                var record = e.record;
                var rowIndex = e.rowIndex;
            var typeId = record.typeId;
            var materialId = record.materialId;
            alert("typeId="+typeId);
                alert("materialId="+materialId);
                var aa = mini.get("materialId");
          
                alert("a2323="+aa);
               return materialId;
             
            }
请问一下我是什么还是得不到 mini.get("materialId")这个对象?我想得到对象然后根据判断为它加载不同的数据

Rank: 8Rank: 8

12#
发表于 2012-10-26 14:35:03 |只看该作者
常常 发表于 2012-10-26 14:22
办公用品
                                
            

function oncellbeginedit(e){
e.editor  //当前编辑的单元格的编辑器对象
}
如果你是用oncellbeginedit事件的,你就这样获取编辑器对象。
或者你点击单元格,然后他处于编辑状态了,再用mini.get()来获取

Rank: 2

13#
发表于 2012-10-26 14:43:50 |只看该作者
factory 发表于 2012-10-26 14:35
function oncellbeginedit(e){
e.editor  //当前编辑的单元格的编辑器对象
}

oncellbeginedit(e)事件加在这里没有反应,我换成了onActionRenderer(e) 事件?
function onActionRenderer(e) {
                var grid = e.sender;
                var record = e.record;
                var rowIndex = e.rowIndex;
            var typeId = record.typeId;
            var materialId = record.materialId;
            alert("typeId="+typeId);
                //alert("materialId="+materialId);
                var bb = e.editor
                alert("bb="+bb)
                var aa = mini.get("materialId");
          
                alert("232443="+aa);
               return materialId;
             
            }
var aa = mini.get("materialId");对象还是获取不到!

Rank: 8Rank: 8

14#
发表于 2012-10-26 14:54:06 |只看该作者
常常 发表于 2012-10-26 14:43
oncellbeginedit(e)事件加在这里没有反应,我换成了onActionRenderer(e) 事件?
function onActionRende ...

<div class="mini-datagrid"  oncellbeginedit="cellbeginedit"></div>

function cellbeginedit(e){
    e.editor
}

Rank: 2

15#
发表于 2012-10-26 15:08:59 |只看该作者
factory 发表于 2012-10-26 14:54
function cellbeginedit(e){
    e.editor
}

好像可以了
  //根据登录人和“办公用品分类”加载“办公用品”列表
        function cellbeginedit(e){
        
           var editor = e.editor
           var grid = e.sender;
               var record = e.record;
               var rowIndex = e.rowIndex;
               
           var typeId = record.typeId;
           //alert("typeId="+typeId);
           var materialObj = mini.get("materialId");
           materialObj.load("${ctx}/BM/WF/bgtypeliandong.jsp?typeId="+typeId);
           //alert("加载对应的办公用品完成");
        }
但是这样的话,没点击一次表格就调用一次这个函数。用户会感觉很卡
能不能只有当用户点击“办公用品”这一列的时候才调用这个函数???

Rank: 2

16#
发表于 2012-10-26 15:17:14 |只看该作者
常常 发表于 2012-10-26 15:08
好像可以了
  //根据登录人和“办公用品分类”加载“办公用品”列表
        function cellbeginedit(e){ ...

知道了 做个判断就可以了

麻烦“factory”了
谢谢

Archiver|普加软件

GMT+8, 2024-11-26 21:22 , Processed in 1.019718 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部