easyui-datagrid 加载数据 方法一( 数据绑定方式 )

 效果图

 html 部分

<div style='padding:0px 0px 7px 12px ;'> 
        <table class="my_table" > 
            <tr> 
                <td class='my_dt_label'>姓名:</td> 
                <td class='my_dt_field'><input type='text' id='select_name' class='my_input' size='30' /></td> 
                <td class='my_dt_label'>电话号码:</td> 
                <td class='my_dt_field'><input type='text' id='select_tel' class='my_input' size='30' /></td> 
                <td class='my_dt_label'>地址:</td> 
                <td class='my_dt_field'><input type='text' id='select_address' class='my_input' size='30' /></td> 
                <td class='my_dt_label'>部门:</td> 
                <td class='my_dt_field'><select id="select_department" class="easyui-combobox"  style="height:28px;width:200px;" editable=false ><{$select_option_department}></select></td>
                <td style="padding: 0px 0px 0px 5px;"> 
                    <a href='#' class='easyui-linkbutton'   iconCls='icon-select' style="height:29px;width:64px;" onclick='Select()'>查询</a> 
                </td>
            </tr> 
        </table> 
        <table> 
            <tr> 
                <td style="width:65px;">创建时间:</td><td><input id="switch_date_entered" class="easyui-switchbutton"  style="width:60px;height:26px" onText="部分" offText="全部"  /> </td> 
                <td style="padding: 0px 0px 0px 2px;"> <input id="start_date_entered" value="<{$start_date}>" placeholder="开始日期" class="my_input laydate-icon" style="height:29px;"  onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})" readonly ></input></td> 
                <td><span class="input-group-addon" style="height:28px;"></span></td> 
                <td><input id="stop_date_entered" value="<{$stop_date}>" placeholder="结束日期" class="my_input laydate-icon" style="height:29px;" onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"  readonly  ></input>    </td> 
                <td style="width:10px;"> </td>
                <td style="width:65px;">修改时间:</td><td><input id="switch_date_modified" class="easyui-switchbutton" style="width:60px;height:26px" onText="部分" offText="全部"  /></td> 
                <td  style="padding: 0px 0px 0px 2px;"> <input id="start_date_modified" value="<{$start_date}>" placeholder="开始日期" class="my_input laydate-icon" style="height:29px;" onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})" readonly ></input></td> 
                <td ><span class="input-group-addon" style="height:28px;"></span></td> 
                <td ><input id="stop_date_modified" value="<{$stop_date}>" placeholder="结束日期" class="my_input laydate-icon" style="height:29px;" onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"  readonly ></input>    </td> 
                
            </tr>
        </table> 
    </div>
    <table id='grid' class='easyui-datagrid' style='width:100%;height:470px'  
            title='列表' iconCls='icon-table' pagination='true' rownumbers='true' fitColumns='true' singleSelect='true' toolbar='#toolbar' >  
        <thead>  
            <tr>  
                <!-- <th field='select' width='30' align='center'></th>-->  
                <th field='id' width='10' hidden='true'>编号</th>      
                <th field='name' width='20'align='center'>姓名</th>   
                <th field='office_tel' width='22'align='center'>电话号码</th>   
                <th field='mobile_tel' width='22'align='center'>移动电话</th>   
                <th field='other_tel' width='22'align='center'>其它电话</th>   
                <th field='sex' width='10'align='center'>性别</th>   
                <th field='department' width='40'align='center'>部门</th>  
                <th field='position' width='15'align='center'>职位</th> 
                <th field='description' width='20' align='center'   >区域</th>
                <th field='address' width='40' align='center'>地址</th>  
                <th field='date_entered' width='30' align='center'>创建时间</th>  
                <th field='created_user_name' width='20' align='center'>创建人</th> 
            </tr>  
        </thead>  
    </table> 
    <div id='toolbar' style='display: flex;align-items:Center; height:35px;' > <!--
        <a href='#' class='easyui-linkbutton' iconCls='icon-select-file' plain='true' onclick='Detail()' <{$Detail_disabled}> >详细</a>
        <a href='#' class='easyui-linkbutton' iconCls='icon-add' plain='true' onclick='Add()'   <{$Add_disabled}>  >新增</a>  
        <a href='#' class='easyui-linkbutton' iconCls='icon-edit' plain='true' onclick='Edit()' <{$Edit_disabled}>  >编辑</a>   
        <a href='#' class='easyui-linkbutton' iconCls='icon-remove' plain='true' onclick='Delete()' <{$Delete_disabled}> >删除</a>  
        <a href='#' class='easyui-linkbutton' iconCls='icon-excel' plain='true' onclick='ToExcel()' <{$ToExcel_disabled}> >导出</a> 
        <div class="btn-separator"></div>
        <a href='#' class='easyui-linkbutton' iconCls='icon-data-import' plain='true' onclick='SaveToXml()'  >一键生成通讯录</a> 
        <div class="btn-separator"></div>
        <a href='#' class='easyui-linkbutton' iconCls='icon-refresh' plain='true' onclick='Refresh()'>刷新</a> 
        <a href='#' class='easyui-linkbutton'  iconCls='icon-cancel' plain='true' onclick='parent.TabClose();'>关闭</a>
    </div> 

javascript部分

最简单的数据绑定方法

    //获取 查询 条件 参数
    function SelectParameter(){
        var switch_date_entered= $("#switch_date_entered").switchbutton("options").checked;//alert(status);  //是否启动 日期查询条件
        var switch_date_modified= $("#switch_date_modified").switchbutton("options").checked;  //alert(switch_install_date);

        var start_date_entered=$('#start_date_entered').val();   //创建时间        
        var stop_date_entered=$('#stop_date_entered').val(); 
        var start_date_modified=$('#start_date_modified').val(); //修改时间          
        var stop_date_modified=$('#stop_date_modified').val();

        var name=$('#select_name').val();     
        var tel=$('#select_tel').val();     
        var address=$('#select_address').val();     
        var created_user_name=$('#select_created_user_name').val();    

        var department=$('#select_department').combobox('getValue');//部门
         
        var query={ 'switch_date_entered':switch_date_entered,'start_date_entered':start_date_entered,'stop_date_entered':stop_date_entered 
                    ,'switch_date_modified':switch_date_modified,'start_date_modified':start_date_modified,'stop_date_modified':stop_date_modified 
                    ,'name':name,'tel':tel,'address':address,'created_user_name':created_user_name
                    ,'department':department  };    
                    
        return query;
    }
    //查询
    function Select(){   
        var query=SelectParameter(); //alert(query);//获取 查询 条件 参数 
        
        var url='Api-index.php?module=<{$module_name}>&action=Api_GridView_Select<{$get_current_user}>' ;   //alert(url);
        $('#grid').datagrid('options').url=url ; 
        $('#grid').datagrid('options').queryParams=query;   
        $('#grid').datagrid('reload');       
    }   

php部分

$table_name='address_book';  
    $arr_result = array(); //返回值  
    $where='';//查询条件  
    
    //启动 哪个日期条件    
    if($_POST['switch_date_entered']=='true'  ){ //WriteLog($_POST['switch_date_entered']
        $where=" and date_entered >='{$_POST['start_date_entered']}' and date_entered <='{$_POST['stop_date_entered']}' ";  
    }else if ($_POST['switch_date_modified']=='true'  ) {
        $where=" and date_modified >='{$_POST['start_date_modified']}' and date_modified <='{$_POST['stop_date_modified']}' ";  
    }
 
    //其它条件  
    if($_POST['name']!=''){   
        $where .=" and name like '%{$_POST['name']}%' ";  
    }  
    if($_POST['address']!=''){  
        $where .=" and address like '%{$_POST['address']}%' "; 
    }  
    if($_POST['tel']!=''){  //mobile_tel office_tel home_tel other_tel  
        $where .=" and ( mobile_tel ='{$_POST['tel']}' or office_tel = '{$_POST['tel']}' or home_tel = '{$_POST['tel']}' or other_tel = '{$_POST['tel']}' ) ";  
    }  
    if($_POST['created_user_name']!=''){  
        $where .=" and created_user_name = '{$_POST['created_user_name']}' "; 
    }  
    if($_POST['department']!='' && $_POST['department']!='0'){  
        $department=$_POST['department']; 
        $where .=" and department = '{$department}' ";  
    } 
    
    $where= " deleted=0 " . $where;
    $order_by=" order by department desc ";  //date_entered

    //导出 或 打印
    if($_GET['target']=="ToExcel" || $_GET['target']=="Print" ){
        $arr_result['where'] = $where;      //将条件 传出
        $arr_result['order_by'] = $order_by;      //将条件 传出
        //WriteLog($where);  
        //WriteLog($order_by);  
        echo json_encode($arr_result);
        exit(0);
    }

    //分页  
    $page = isset($_POST['page']) ? intval($_POST['page']) : 1;   
    $rows = isset($_POST['rows']) ? intval($_POST['rows']) : 10;   
    $offset = ($page-1)* $rows;   
    
    $sql ="SELECT COUNT(id) AS total FROM {$table_name} where " . $where ;   
    //WriteLog($sql);  
    $arr_result['total'] =$db->query_count($sql);//行数  
    //WriteLog($result['total'].'-----' );  
    
    //结果集      
    $items = array();  
    $sql = "select * from {$table_name} where ".$where . $order_by ." limit $offset,$rows ";   
    //WriteLog($sql);  
     
    $result_rows=$db->query($sql);  
    while($row=$db->fetch_array($result_rows))  
    {  
        //$select_title='选择';//iconv('GB2312','UTF-8','选择');  
        //$row['select']="<a href='#'  style='text-decoration:none;' onclick='javascript:Show_Contact(\'". $row['id'] . "\');> " . $select_title . ' </a>';  
        array_push($items, $row);   
    }  

    $arr_result['rows'] = $items;       

    //WriteLog(json_encode($arr_result));  
    echo json_encode($arr_result);   

 

posted @ 2024-01-31 16:29  海乐学习  阅读(230)  评论(0编辑  收藏  举报