加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

ASP 利用jqGrid实现读写删的代码 json

发布时间:2023-05-12 12:40:34 所属栏目:Asp教程 来源:
导读:jqGrid是一个优秀的基于jQuery的DataGrid框架,想必大伙儿也不陌生,网上基于ASP的资料很少,我提供一个,数据格式是json的:一个针对jqGrid的json类:这段代码似乎是由官网论坛的一些PHP中转化而来,我们存为json.a

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 epage<1 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).Value&chr(34)&",cell:["& chr(34) &Rs.Fields(0).Value&chr(34)&","

oneRecord = "{id:" & chr(34) &Rs.Fields(0).Value&chr(34)&",cell:["& chr(34) &Rs.Fields(0).Value&chr(34)&","

for i=1 to Rs.Fields.Count -1

'oneRecord=oneRecord & chr(34) &Rs.Fields(i).Name&chr(34)&":"

oneRecord=oneRecord & chr(34) &Rs.Fields(i).Value&chr(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

%>

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章