主页 > 知识库 > ASP 使用jqGrid实现读写删的代码(json)

ASP 使用jqGrid实现读写删的代码(json)

热门标签:Mysql连接数设置 阿里云 电子围栏 银行业务 Linux服务器 团购网站 服务器配置 科大讯飞语音识别系统
jqGrid是一个优秀的基于jQuery的DataGrid框架,想必大伙儿也不陌生,网上基于ASP的资料很少,我提供一个,数据格式是json的:
、一个针对jqGrid的json类:这段代码似乎是由官网论坛的一些PHP中转化而来,我们存为json.asp,代码贴一下:
复制代码 代码如下:

%
response.Charset="utf-8"
'---------------------------------------
' JSONClass类
' 将Select语句的执行结果转换成JSON
'------------------------------------------
Class JSONClass
' 定义类属性,默认为Private
Dim SqlString ' 用于设置Select
Dim JSON ' 返回的JSON对象的名称
Dim DBConnection ' 连接到数据库的Connection对象
' 可以外部调用的公共方法
Public Function GetJSON ()
dim Rs
dim returnStr
dim i
dim oneRecord
' 获取数据
Set Rs= Server.CreateObject("ADODB.Recordset")
Rs.open SqlString,DBConnection,1,1
if page>"" then
epage=cint(page)
if epage1 then epage=1
if epage>rs.pagecount then epage=rs.pagecount
else
epage=1
end if
rs.pagesize = rows
rs.absolutepage = epage
' 生成JSON字符串
if Rs.eof=false and Rs.Bof=false then
returnStr="{ total: " rs.pagecount ", page: " page ", records: " rs.recordcount ", rows:["
for j=0 to rs.pagesize-1
if rs.bof or rs.eof then exit for
' -------
'oneRecord = "{id:" chr(34) Rs.Fields(0).Valuechr(34)",cell:[" chr(34) Rs.Fields(0).Valuechr(34)","
oneRecord = "{id:" chr(34) Rs.Fields(0).Valuechr(34)",cell:[" chr(34) Rs.Fields(0).Valuechr(34)","
for i=1 to Rs.Fields.Count -1
'oneRecord=oneRecord chr(34) Rs.Fields(i).Namechr(34)":"
oneRecord=oneRecord chr(34) Rs.Fields(i).Valuechr(34) ","
Next
'去除记录最后一个字段后的","
oneRecord=left(oneRecord,InStrRev(oneRecord,",")-1)
oneRecord=oneRecord "]},"
'------------
returnStr=returnStr oneRecord
Rs.MoveNext
next
' 去除所有记录数组后的","
returnStr=left(returnStr,InStrRev(returnStr,",")-1)
returnStr=returnStr "]}"
end if
Rs.close
set Rs=Nothing
GetJSON=returnStr
End Function
'私用方法,在类中使用
Private Function check()
End Function
'
End Class
%>

2、制作显示数据的asp文件,如:list.asp,代码如下
复制代码 代码如下:

!--#include file="conn.asp" -->
!--#include file="json.asp" -->
%
dim page,rows,sidx,sord
page = request.QueryString("page") 'page
rows = request.QueryString("rows") 'pagesize
sidx = request.QueryString("sidx") 'order by ??
sord = request.QueryString("sord")
if page="" then page = 1 end if
if rows = "" then rows = 10 end if
if sidx = "" then sidx = "id" end if
if sord = "" then sord ="asc" end if
Dim strSearchOn, strField, strFieldData, strSearchOper, strWhere
strSearchOn = Request("_search")
If (strSearchOn = "true") Then
strField = Request("searchField")
If (strField = "id" Or strField = "Title" Or strField = "NickName") Then
strFieldData = Request("searchString")
strSearchOper = Request("searchOper")
'construct where
strWhere = " Where " strField
Select Case strSearchOper
Case "bw" : 'Begin With
strFieldData = strFieldData "%"
strWhere = strWhere " LIKE '" strFieldData "'"
Case "eq" : 'Equal
If(IsNumeric(strFieldData)) Then
strWhere = strWhere " = " strFieldData
Else
strWhere = strWhere " = '" strFieldData "'"
End If
Case "ne": 'Not Equal
If(IsNumeric(strFieldData)) Then
strWhere = strWhere " > " strFieldData
Else
strWhere = strWhere " > '" strFieldData "'"
End If
Case "lt": 'Less Than
If(IsNumeric(strFieldData)) Then
strWhere = strWhere " " strFieldData
Else
strWhere = strWhere " '" strFieldData "'"
End If
Case "le": 'Less Or Equal
If(IsNumeric(strFieldData)) Then
strWhere = strWhere " = " strFieldData
Else
strWhere = strWhere " = '" strFieldData "'"
End If
Case "gt": 'Greater Than
If(IsNumeric(strFieldData)) Then
strWhere = strWhere " > " strFieldData
Else
strWhere = strWhere " > '" strFieldData "'"
End If
Case "ge": 'Greater Or Equal
If(IsNumeric(strFieldData)) Then
strWhere = strWhere " >= " strFieldData
Else
strWhere = strWhere " >= '" strFieldData "'"
End If
Case "ew" : 'End With
strWhere = strWhere " LIKE '%" strFieldData "'"
Case "cn" : 'Contains
strWhere = strWhere " LIKE '%" strFieldData "%'"
End Select
End if
End If
server.ScriptTimeout=9000
dim a
set a=new JSONClass
a.Sqlstring="Select id,Title,NickName,Pwd,LastLoginTime From Admin"strWhere" ""order by " sidx " " sord
a.dbconnection=conn
response.Write(a.GetJSon())
conn.close()
set conn = nothing
%>

里面把搜索的代码涵盖了。这样基本实现了读,至于jqGrid中的editurl的文件,我们称其edit.asp,代码如下:
复制代码 代码如下:

%Option Explicit%>
!--#include file="config.asp"-->
%
Dim strOper, strID, strNickName, strTitle, strPwd
strOper = Request("oper")
strID = Replace(Request("Id"),"'","''")
strTitle = Replace(Request("Title"),"'","''")
strNickName = Replace(Request("NickName"),"'","''")
strPwd = Replace(Request("Pwd"),"'","''")
Select Case strOper
Case "add": 'Add Record
strSQL = "Insert Into Admin (Title, NickName, Pwd,LastLoginTime) Values('"strTitle"', '"strNickName"', '"strPwd"',Now()) "
Case "edit": 'Edit Record
strSQL = "Update Admin Set Title = '"strTitle"', NickName = '"strNickName"', Pwd = '"strPwd"' Where id = "strID
Case "del": 'Delete Record
strSQL = "Delete From Admin Where id = "strID
End Select
'response.Write strSQL
Dim strSQL,rs
Call OpenDB()
Set rs = Conn.Execute(strSQL)
Call CloseDB()
%>

这是前台index.html代码
复制代码 代码如下:

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml">
head>
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
title>ASP_jqGrid_Test/title>
link rel="stylesheet" type="text/css" href="jquery-ui-1.7.2.custom.css"/>
link rel="stylesheet" type="text/css" href="jqgrid.css"/>
link rel="stylesheet" type="text/css" href="ui.multiselect.css"/>
script type="text/javascript" src="js/jquery.js">/script>
script type="text/javascript" src="js/cn.js">/script>
script type="text/javascript" src="js/jqGrid.js">/script>
/head>
body>
table id="DataGrid" class="scroll">/table>
div id="pager" class="scroll" style="text-align:center;">/div>
/body>
/html>
script type="text/javascript">
jQuery("#DataGrid").jqGrid({
url:'list.asp',
datatype: "json",
colNames:['ID','管理员账号','管理员昵称','密码','上次登录时间'],
colModel :[
{
name:'Id',
index:'Id',
width:50
},
{
name:'Title',
index:'Title',
editable:true,
editrules:{
required:true
}
},
{
name:'NickName',
index:'NickName',
editable:true,
editrules:{
required:true
}
},
{
name:'Pwd',
index:'Pwd',
editable:true,
edittype:'password',
hidden:true,
editoptions:{
size:20
},
editrules:{
edithidden:true
}
},
{
name:'LastLoginTime',
index:'LastLoginTime',
align:'right',
editrules:{
required:true
}
} ], caption:"管理员列表",
imgpath:'/images',
multiselect: true,
rowNum:20,
rowList:[10,20,30],
pager: jQuery('#pager'),
sortname: 'Id',
viewrecords: true,
sortorder: "desc",
height:400,
width:600,
editurl:"edit.asp"
});
$('#DataGrid').navGrid('#pager',{
refresh: true,
edit: true,
add: true,
del: true,
search: true,
searchtext:"搜",
edittext:"改",addtext:"添",deltext:"删"
});
/script>

jqGrid,好东西~~
您可能感兴趣的文章:
  • jqGrid随窗口大小变化自适应大小的示例代码
  • Jqgrid设置全选(选择)及获取选择行的值示例代码
  • JQGrid的用法解析(列编辑,添加行,删除行)
  • jquery增加时编辑jqGrid(实例代码)
  • jQuery中jqGrid分页实现代码
  • 一个关于jqGrid使用的小例子(行按钮)
  • 给jqGrid数据行添加修改和删除操作链接(之一)
  • jqGrid jQuery 表格插件测试代码
  • jqgrid 简单学习笔记
  • jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
  • jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
  • jqGrid 学习笔记整理——进阶篇(一 )

标签:枣庄 萍乡 衡水 广元 衢州 蚌埠 江苏 大理

巨人网络通讯声明:本文标题《ASP 使用jqGrid实现读写删的代码(json)》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266