本人是用php写的,相信只要稍微用点时间看本人写的,就一定能看懂

前台代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>my frist jqgrid</title>
<meta name="description" content="" />
<meta name="keywords" content="" />

<link href="jqGrid/jquery-ui-1.10.1.custom.min.css" rel="stylesheet" type="text/css" /><!--外部链接CSS-->
<link rel="stylesheet" type="text/css" href="jqGrid/ui.jqgrid.css">

<script type="text/javascript" src="jqGrid/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="jqGrid/jquery-ui-1.10.1.custom.min.js"></script>
<script type="text/javascript" src="jqGrid/grid.locale-cn.js"></script>
<script type="text/javascript" src="jqGrid/jquery.jqGrid.min.js"></script>

<script type="text/javascript">
jQuery(document).ready(function(){
jQuery('#list').jqGrid({
url:'example.php',
datatype:'xml',
mtype:'GET',
colNames:['invid','invdate','amount','Tax','Total','note'],
colModel:[
{name:'invid',index:'invid',width:55,editable:true},
{name:'invdate',index:'invdate',width:90,editable:true},
{name:'amount',index:'amount',width:80,editable:true},
{name:'Tax',index:'Tax',width:80,editable:true},
{name:'Total',index:'Total',width:80,editable:true},
{name:'note',index:'note',width:90,editable:true}],
pager:'#pager',
rowNum:10,
width:'auto',
editurl: "add.php",
autoheight:true,
height:'auto',
rowList:[10,20,30],
sortname:'invid',
viewrecords:true,
caption:'my frist grid'
});
var add_options={
width:320,
height:300,
left:250,
top:40,
jqModal:true,
reloadAfterSubmit:true,
addCaption: "添加新记录",
bSubmit: "保存",
bCancel: "关闭",
closeAfterAdd:true,

afterSubmit: function(response,postdata){
var msg = response.responseText;
msg = "<xml>"+msg+"</xml>";
var result = jQuery(msg).find("status").text();
if(result == "success")
return [true,"添加成功!",""];
else
return [false,"添加失败!",""];
},
afterShowForm:function(formid){
// var date = new Date();
// jQuery('#cdate').val(date.toLocaleDateString());
},
};
var edit_options={
width:320,
height:'auto',
left:250,
top:40,
reloadAfterSubmit:true,
jqModal:true,
addCaption: "编辑该项目信息",
bSubmit: "保存",
bCancel: "关闭",
closeAfterEdit:true,
afterSubmit:function(response,postdata){
//alter(response.responseText);
var msg = response.responseText;
//msg = "<xml>"+msg+"</xml>";
var result = jQuery(msg).find("status").text();
if(result == "success"){
return [true,"修改成功!",""];
}
else
return [false,"修改失败!",""];
},
};
var search_option = {
width:620,
height:150
};
jQuery("#list").jqGrid(
'navGrid','#pager',
{
edit:true,edittext:"修改",add:true,addtext:"增加",
del:true,deltext:"删除",refresh:true,refreshtext:"刷新"
},edit_options,add_options,{},search_option,{}
);
});
</script>

<style type="text/css">
</style>
</head>
<body>
<table id="list"></table>
<div id="pager"></div>
</body>
</html>

后台显示和修改代码

<?php
/*include("db.php");*/

$page=$_GET['page'];//获取表格page值,默认1
$limit=$_GET['rows'];//获得表格中rowNum值,表示需要多少行
$sidx=$_GET['sidx'];//获得默认排序值
$sord=$_GET['sord'];//获得排序方式,初始值为sort or der值
$search=$_REQUEST['_search'];
if(!$sidx)$sidx=1;
$db=mysql_connect('localhost','lj','1111')or die("连接问题:".mysql_error());

mysql_select_db('lj')or die("无法连接上库");
$result = mysql_query("SELECT COUNT(*) AS count FROM invheader a");
$row = mysql_fetch_array($result,MYSQL_ASSOC);
$count=$row['count'];

if($count>0){
$total_pages=ceil($count/$limit);
}else{
$total_pages=0;
}
if($page>$total_pages)$page=$total_pages;
$start=$limit*$page-$limit;
if($search=='false'){
$SQL = "SELECT a.invid, a.invdate, a.amount,a.tax,a.total,a.note FROM invheader a WHERE "
." a.invid ORDER BY $sidx $sord LIMIT $start,$limit";
}
else{
$searchString=$_REQUEST['searchString'];
$SQL = "SELECT a.invid, a.invdate, a.amount,a.tax,a.total,a.note FROM invheader a WHERE "
." a.invid=".$searchString." ORDER BY $sidx $sord LIMIT $start,$limit";
}

/*var_dump($SQL);die;*/
$result = mysql_query( $SQL ) or die("Couldn’t execute query.".mysql_error());

if ( stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml") ) {
header("Content-type: application/xhtml+xml;charset=utf-8"); } else {
header("Content-type: text/xml;charset=utf-8");
}
$et = ">";

echo "<?xml version='1.0' encoding='utf-8'?$et\n";
echo "<rows>";
echo "<page>".$page."</page>";
echo "<total>".$total_pages."</total>";
echo "<records>".$count."</records>";
// be sure to put text data in CDATA
while($row = mysql_fetch_array($result,MYSQL_ASSOC)) {
echo "<row id='".$row['invid']."' >";
echo "<cell>". $row['invid']."</cell>";
echo "<cell>". $row['invdate']."</cell>";
echo "<cell>". $row['amount']."</cell>";
echo "<cell>". $row['tax']."</cell>";
echo "<cell>". $row['total']."</cell>";
echo "<cell><![CDATA[". $row['note']."]]></cell>";
echo "</row>";
}
echo "</rows>";

?>

后台添加代码

<?php
$oper=$_POST['oper'];
switch ($oper) {
case 'add':
$invid=$_REQUEST['invid'];
$invdate=$_REQUEST['invdate'];
$amount=$_REQUEST['amount'];
$tax=$_REQUEST['Tax'];
$total=$_REQUEST['Total'];
$note=$_REQUEST['note'];

$sql=<<<EOF
INSERT INTO invheader(invid,invdate,amount,tax,total,note)
VALUES($invid,'$invdate',$amount,$tax,$total,$note);
EOF;
$db=mysql_connect('localhost','lj','1111')or die("连接问题:".mysql_error());
mysql_select_db('lj')or die("无法连接上库");
$result = mysql_query( $sql ) or die("Couldn’t execute query.".mysql_error());
//$command=Yii::app()->db->createCommand($sql);
if($result>=0 ){
echo "<xml><status>success</status></xml>";
}else{
echo "<xml><status>error</status></xml>";
}
break;
case 'edit':
$invid=$_REQUEST['invid'];
$invdate=$_REQUEST['invdate'];
$amount=$_REQUEST['amount'];
$tax=$_REQUEST['Tax'];
$total=$_REQUEST['Total'];
$note=$_REQUEST['note'];

$sql=<<<EOF
update invheader set invid=$invid,invdate=$invdate,
amount=$amount,tax=$tax,total=$total,note=$note
where invid=$invid
;
EOF;
var_dump($sql);
$db=mysql_connect('localhost','lj','1111')or die("连接问题:".mysql_error());
mysql_select_db('lj')or die("无法连接上库");
$result = mysql_query( $sql ) or die("Couldn’t execute query.".mysql_error());
//$command=Yii::app()->db->createCommand($sql);
if($result>=0 ){
echo "<xml><status>success</status></xml>";
}else{
echo "<xml><status>error</status></xml>";
}
break;
case 'del':
$invid=$_REQUEST['id'];
$sql=<<<EOF
delete from invheader where invid=$invid
EOF;
var_dump($sql);
$db=mysql_connect('localhost','lj','1111')or die("连接问题:".mysql_error());
mysql_select_db('lj')or die("无法连接上库");
$result = mysql_query( $sql ) or die("Couldn’t execute query.".mysql_error());
//$command=Yii::app()->db->createCommand($sql);
if($result>=0 ){
echo "<xml><status>success</status></xml>";
}else{
echo "<xml><status>error</status></xml>";
}
break;
default:
# code...
break;
}
?>

jqgrid demo的更多相关文章

  1. Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引

    因为内容比较多,所以每篇讲解一些内容,最后会放出全部代码,可以参考.操作中总会遇到各式各样的问题,个人对部分问题的研究在最后一篇 问题研究 里.欢迎大家探讨学习. 代码都经过个人测试,但仍可能有各种未 ...

  2. jQuery插件:jqGrid引入及基本属性

    1. jqGrid下载 jqGrid下载地址: http://www.trirand.com/blog/ jqGrid Demo: http://www.guriddo.net/demo/guridd ...

  3. Jqgrid学习API

    JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情. 下面是转自其他人b ...

  4. 【转】jqGrid 各种参数 详解

      [原文]http://www.cnblogs.com/younggun/archive/2012/08/27/2657922.htmljqGrid 各种参数 详解 JQGrid JQGrid是一个 ...

  5. JQGrid 参数、属性API

    JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情. 下面是转自其他人b ...

  6. jqGrid 各种参数 详解

    JQGrid JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情. 下面 ...

  7. JqGrid 使用方法详解

    JQGrid JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情. 下面 ...

  8. jqGrid API 全

    JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情. 下面是转自其他人b ...

  9. jqGrid笔记@简单实现

    jqGrid在MVC中的版本是已经通过 HtmlHelper 的扩展方法封装后的产物,webForm版本貌似也将其封装成了服务器端空间,所以我推荐下载原生的jqGrid版本的地址为:http://ww ...

随机推荐

  1. Java 中断线程

  2. linux内核——会话、进程组、线程组

    会话.进程组.线程组总体关系示意图 待插入 Session(会话)与进程组 Shell 分前后台来控制的不是进程而是作业(Job)或者进程组(Process Group).一个前台作业可以由多个进程组 ...

  3. springmvc sitemesh json问题

    参考: 解决方法: <sitemesh> <mapping path="/*" decorator="/WEB-INF/views/template/t ...

  4. PHP - MAC下PhpStorm安装调试环境xdebug

    今天下午一直在捣鼓如何用PhpStorm进行调试,查找了许多资料,零零碎碎的,所以自己弄篇文章记录一下步骤. 安装xdebug 使用brew安装xdebug,语法如下 brew install hom ...

  5. scikit-learn:4.2.3. Text feature extraction

    http://scikit-learn.org/stable/modules/feature_extraction.html 4.2节内容太多,因此将文本特征提取单独作为一块. 1.the bag o ...

  6. oracle和其他数据库对表名、列名的长度限制

    ============== 数据库 表名列名长度限制问题 今天修改数据库表名,感觉现有的定义列名都无含义...修改后被同事告知,列名有点长,怕有的数据库不支持.. 我头一次听说数据库表名和列名长度限 ...

  7. 使用Topshelf创建Windows服务(转)

    Calculator public class Calculator : ICalculator { public Calculator() { Logger = LogManager.GetCurr ...

  8. JEECG 多数据源设计

    转至元数据起始   为什么要有多数据源? 通常一个系统只需要连接一个数据库就可以了,Jeecg数据源是配置在spring-mvc-hibernate.xml文件中,这种数据源我们叫做主数据源.但是在企 ...

  9. Junit运行在Spring环境下

    @RunWith(SpringJUnit4ClassRunner.class)让测试运行于Spring测试环境 @ContextConfiguration 用来指定加载的Spring配置文件的位置,会 ...

  10. C++知识点 笔试常见

    C++知识点   一.#include “filename.h”和#include <filename.h>的区别 #include “filename.h”是指编译器将从当前工作目录上开 ...