post.php:
<?
function runSQL($rsql) {
$connect = mysql_connect("localhost","root","123456") or die ("Error: could not connect to database");
$db = mysql_select_db("datas");
mysql_query("set NAMES UTF8");
$result = mysql_query($rsql) or die ('test');
return $result;
mysql_close($connect);
}
function countRec($fname,$tname) {
$sql = "SELECT count($fname) FROM $tname ";
$result = runSQL($sql);
while ($row = mysql_fetch_array($result)) {
return $row[0];
}
}
$page = $_POST['page'];
$rp = $_POST['rp'];// records per page 每页多少条数据
$sortname = $_POST['sortname'];
$sortorder = $_POST['sortorder'];
if (!$sortname) $sortname = 'name';
if (!$sortorder) $sortorder = 'desc';
$sort = "ORDER BY $sortname $sortorder";
if (!$page) $page = 1;
if (!$rp) $rp = 10;
$start = (($page-1) * $rp);
$limit = "LIMIT $start, $rp";
$sql = "SELECT * FROM worker where ".$qtype. "='".$query ."' $sort $limit";
$result = runSQL($sql);
$total = mysql_num_rows($result);
header("Cache-Control: no-cache, must-revalidate" );
header("Pragma: no-cache" );
header("Content-type: text/xml");
$xml = "<?xml version=/"1.0/" encoding=/"utf-8/"?>/n";
$xml .= "<rows>";
$xml .= "<page>$page</page>";
$xml .= "<total>$total</total>";
while ($row = mysql_fetch_array($result)) {
$xml .= "<row id='".$row['id']."'>";
$xml .= "<cell><![CDATA[".$row['name']."]]></cell>";
$xml .= "<cell><![CDATA[".utf8_encode($row['status_id'])."]]></cell>";
//$xml .= "<cell><![CDATA[".print_r($_POST,true)."]]></cell>";
$xml .= "<cell><![CDATA[".utf8_encode($row['mobile'])."]]></cell>";
$xml .= "<cell><![CDATA[".utf8_encode($row['login_passes'])."]]></cell>";
$xml .= "<cell><![CDATA[".utf8_encode($row['grade'])."]]></cell>";
$xml .= "</row>";
}
$xml .= "</rows>";
echo $xml;
?>
html:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Flexigrid</title>
<link rel="stylesheet" href="style.css" />
<link rel="stylesheet" type="text/css" href="css/flexigrid/flexigrid.css">
<script type="text/javascript" src="lib/jquery/jquery.js"></script>
<script type="text/javascript" src="flexigrid.js"></script>
</head>
<body>
<style>
.flexigrid div.fbutton .add
{
background: url(css/images/add.png) no-repeat center left;
}
.flexigrid div.fbutton .delete
{
background: url(css/images/close.png) no-repeat center left;
}
.flexigrid div.fbutton .edittest
{
background: url(css/images/close.png) no-repeat center left;
}
</style>
<input type=button οnclick="getCurrentPage()" value="getCurrentPage" />
<table id="aaa"></table>
<script type="text/javascript">
var thisgrid;
var rowdbclick = function(rowData) {
var xxx=$('.trSelected',thisgrid)
alert(xxx[0].id)
alert(rowData['name'])
}
thisgrid=$("#aaa").flexigrid
(
{
onRowDblclick:rowdbclick,
url: 'post.php',
dataType: 'xml',
colModel : [
{display: '姓名', name : 'name', width :20 , sortable : true, align: 'center'},
{display: '状态', name : 'status_id', width : 20, sortable : true, align: 'left'},
{display: '手机', name : 'mobile', width : 30, sortable : true, align: 'left'},
{display: '登陆次数', name : 'login_passes', width : 16, sortable : true, align: 'left', hide: true},
{display: '等级', name : 'grade', width : 19, sortable : true, align: 'right'}
],
buttons : [
{name: '添加', bclass: 'add', onpress : test},
{name: '删除', bclass: 'delete', onpress : test},
{name: '编辑', bclass: 'edittest', onpress : test},
{separator: true}
],
searchitems : [
{display: 'name', name : 'name'},
{display: 'mobile', name : 'mobile', isdefault: true}
],
sortname: "name",
sortorder: "asc",
usepager: true,
title: '员工信息表',
useRp: true,
rp: 10,
newp: 1,//加载后默认显示第几页
showTableToggleBtn: true,
nomsg: '没有符合条件的记录存在',
minColToggle: 1, //允许显示的最小列数
showTableToggleBtn: true,
autoload: true, //自动加载,即第一次发起ajax请求
resizable: false, //table是否可伸缩
procmsg: '加载中, 请稍等 ...',
query: "51",
qtype: "id",
onSuccess: clickme,
singleSelect:true//只能单选
}
);
function test(com,grid)
{
//alert(grid.className)//flexigrid ie
//return
if (com=='删除')
{
var xx=$('.trSelected',grid)
alert(xx[0].id)// row37
confirm('删除 ' + $('.trSelected',grid).length + ' items?')
}
else if (com=='添加')
{
alert('添加 New Item');
}
else if (com=='编辑')
{
alert('编辑 New Item');
}
}
function clickme(){
var ooo=$('#row51',thisgrid)
//alert(ooo[0].id)//值:row51 取选中的记录ID
alert(trObj[0].id.substring(3)); //值:51
ooo[0].className='trSelected'
//alert(ooo[0].parentNode.innerHTML)
}
function getCurrentPage(){//获得当前页
var P=$('.pcontrol input')//获得所有样式为.pcontrol 的input对象
alert(P[0].value)//取第1个对象的值,即为当前页数
}
</script>
</body>
</html>