JSRUN 用代码说话

创建子网格

编辑教程

jQuery EasyUI 数据网格 - 创建子网格

使用jQuery EasyUI数据网格(datagrid)的详细视图,用户可以展开一行来显示附加的详细信息。任何内容都可以加载作为行详细,子网格也可以动态加载。

本例将展示如何在主网格上创建一个子网格。

创建主网格

<table id="dg" style="width:700px;height:250px" url="datagrid22_getdata.php" title="DataGrid - SubGrid" singleSelect="true" fitColumns="true">
  <thead>
    <tr>
      <th field="itemid" width="80">Item ID</th>
      <th field="productid" width="100">Product ID</th>
      <th field="listprice" align="right" width="80">List Price</th>
      <th field="unitcost" align="right" width="80">Unit Cost</th>
      <th field="attr1" width="220">Attribute</th>
      <th field="status" width="60" align="center">Status</th>
    </tr>
  </thead>
</table>

设置详细视图来显示子网格

为了使用详细视图,请在页面头部引用视图脚本文件。

$('#dg').datagrid({
  view: detailview,
  detailFormatter:function(index,row){
    return '<div style="padding:2px"><table class="ddv"></table></div>';
  },
  onExpandRow: function(index,row){
    var ddv = $(this).datagrid('getRowDetail',index).find('table.ddv');
    ddv.datagrid({
      url:'datagrid22_getdetail.php?itemid='+row.itemid,
      fitColumns:true,
      singleSelect:true,
      rownumbers:true,
      loadMsg:'',
      height:'auto',
      columns:[[
        {field:'orderid',title:'Order ID',width:100},
        {field:'quantity',title:'Quantity',width:100},
        {field:'unitprice',title:'Unit Price',width:100}
      ]],
      onResize:function(){
        $('#dg').datagrid('fixDetailRowHeight',index);
      },
      onLoadSuccess:function(){
        setTimeout(function(){
          $('#dg').datagrid('fixDetailRowHeight',index);
        },0);
      }
    });
    $('#dg').datagrid('fixDetailRowHeight',index);
  }
});

当用户点击展开按钮('+')时,'onExpandRow'事件将被触发。

创建一个新的带有三列的子网格。 当子网格数据加载成功时或者改变尺寸大小时,请记得对主网格调用'fixDetailRowHeight'方法。

服务器端代码

$result = array();

include 'conn.php';

$rs = mysql_query("select * from item where itemid in (select itemid from lineitem)");

$items = array();
while($row = mysql_fetch_object($rs)){
  array_push($items, $row);
}

echo json_encode($items);
include 'conn.php';

$itemid = mysql_real_escape_string($_REQUEST['itemid']);

$rs = mysql_query("select * from lineitem where itemid='$itemid'");
$items = array();
while($row = mysql_fetch_object($rs)){
  array_push($items, $row);
}
echo json_encode($items);
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟