解决方案 »

  1.   

    我把代码贴在这里,各位路过的可以看下,问题在哪里,<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>test</title>
    <link rel="stylesheet" type="text/css" href="..\js\extjs\resources\css\ext-all.css" />
    <script type= "text/javascript"  src="..\js\extjs\adapter\ext\ext-base.js"></script>
    <script type= "text/javascript"  src= "..\js\extjs\ext-all.js"></script>
    <script type="text/javascript" src="..\js\extjs\CN.js"></script>
    <script type="text/javascript" src="..\js\extjs\RowExpander.js"></script><script type="text/javascript">
    Ext.onReady(function(){
    var testData=[
    ["lugreen","男",26,[["数学",100],["语文",150]]] ,
    ["lisi","男",25,[["数学",100],["语文",150]]] ,
    ["zhangsan","男",27,[["数学",120],["语文",158],["数学",120],["语文",158],["数学",120],["语文",158],["数学",120],["语文",158],["数学",120],["语文",158]]],
    ["zhangsan","男",27,[["数学",120],["语文",158]]]  ,
    ["zhangsan","男",27,[["数学",120],["语文",158]]]   ,
    ["zhangsan","男",27,[["数学",120],["语文",158]]]   ,
    ["zhangsan","男",27,[["数学",120],["语文",158]]]   ,
    ["zhangsan","男",27,[["数学",120],["语文",158]]]     
         ];
    //
    storeTest= new Ext.data.SimpleStore({
         fields: ["name","sex","age","grade"],
         data: testData
    }); var expander = new Ext.grid.RowExpander({
             tpl : new Ext.XTemplate('<div class="detailData">','','</div>'),
             expandOnDblClick:false
             //selectRowOnExpand:false,
             //expandOnClick:false          });
     //添加嵌套表格
         
    expander.on("expand",function(expander,r,body,rowIndex){
       window.testEle=body;
       //alert(body.id);
         var data=r.json[3];
          var store=new Ext.data.SimpleStore({
                     fields: ["class","degrade"],
                     data:data
              });
              var sm=new Ext.grid.CheckboxSelectionModel({singleSelect:false});
          var cm = new Ext.grid.ColumnModel([
          sm,
          {header: "科目",
           dataIndex: 'class',
             width: 130,
           hideable:false,
             sortable:false,
             resizable:true
            },
            {header: "成绩",
             dataIndex: 'degrade',
             width: 130,
             hideable:false,
             sortable:false,
             resizable:true,
             editor:new Ext.grid.GridEditor(new Ext.form.TextField({allowBlank:false}))
          }]);
              Ext.DomQuery.select("div.detailData")[0];
       var grid = new Ext.grid.EditorGridPanel({
         store:store,
         cm:cm,
         sm:sm,
         renderTo:Ext.DomQuery.select("div.detailData",body)[0],
         autoWidth:true,
         autoHeight:true
         });
      });
       
         var cm1 = new Ext.grid.ColumnModel([
       
         {header: "姓名",dataIndex: 'name',width: 50,hideable:false,sortable:false},
         {header: "性别",dataIndex: 'sex',width: 130,hideable:false,sortable:false,resizable:true},
         {header: "年龄",dataIndex: 'age',width: 130,hideable:false,sortable:false,resizable:true ,
          editor:new Ext.grid.GridEditor(new Ext.form.TextField({allowBlank:false}))
          },
          expander
         ]);   var grid1 = new Ext.grid.EditorGridPanel({
         id:'testgrid',
         store:storeTest,
         cm:cm1,
          renderTo:"grid1",
          width:780,
          listeners:{},
         autoHeight:false,
         height:400,
         plugins:expander
      });
    });
    </script>
    <style type="text/css">
    #div2 h2 {
        font-weight:200;
        font-size:12px;
    }
    .c1 h2 {
        font-weight:200;
    }
    </style>
    </head>
    <body>
    <div id="grid1">
      
    </div>
    <div id="grid2">
      
    </div></body>
    </html>
      

  2.   

    grid.on( {
    'mouseover' : function(e) {
    e.stopPropagation();
    },
    'mouseout' : function(e) {
    e.stopPropagation();
    }
    });
    grid.afterMethod("processEvent", function(n, e) {
    e.stopPropagation();
    });
    这样就可以了,你参考的那个例子很不完善,如果可以,建议你还是别用表格嵌套了。