一个很强大的分页代码。

发布时间:2020-02-08 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了一个很强大的分页代码。脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

' * 数据库转json  分页公用类库
' * EMAIL:[email protected] QQ:82366788 $
' * $Author: Cason $
' * $Id: yl_clsjson.asp 6481 2011-11-26 00:21:46 Cason $
	property get order_name()
		dim o_sql,o_colum,olen,o_pai,i
		dim left_sql,right_sql
		o_sql = Cason_sql
		olen = instr(o_sql,"order")
		left_sql = left(o_sql,olen-1)
		right_sql = trim(mid(o_sql,olen))
		if olen = 0 then
			response.write "请设定排序方式!"
			response.end
		end if 
		o_sql = split(right_sql," ")
		for i = 0 to ubound(o_sql)
			if o_sql(i) = "by" then 
				if i>1 then
					o_sql(1) = "by"
					o_sql(i) = ""
				end if 
			end if 
			if i>2 and o_sql(2) = "" and o_sql(i) <> "" then
				o_sql(2) = o_sql(i)
				o_sql(i) = ""
			end if 
			if o_sql(i) = "asc" or o_sql(i) = "desc" then
				if i >3  then
					o_sql(3) = o_sql(i)
					o_pai = " " & o_sql(i)
					o_sql(i) = ""
					exit for 
				end if 
			end if 
		next
		right_sql = join(o_sql)
		if o_pai = "" then
			o_pai = " asc"
			right_sql = replace(right_sql,o_sql(2),o_sql(2) & " asc")
		end if 
		cason_sql = left_sql & right_sql
		
		order_name = o_sql(2) & o_pai
		
	end property
	
	property get th(ByVal str_val)
		if instr(str_val,"desc") >0 then
			th = replace(str_val,"desc","asc")
		else
			th = replace(str_val,"asc","desc")
		end if 
	end property 
	'================================================================
	' ResultSet 返回分页后的记录集
	'================================================================
	public Property Get ResultSet()
		dim Cason_Rs,col_name
		dim top_sql,top_Count,select_sql
		dim set_sql 
		col_name = order_name
		if int(Cason_CurrPage) = 1 then
			top_sql = " top " & Cason_PageSize & " "
			top_Count = 0
		else
			top_sql = " top " & (Cason_CurrPage) * Cason_PageSize & " "
			top_Count = (Cason_CurrPage - 1) * Cason_PageSize 
		end if 
		set_sql = "select" & top_sql & trim(mid(Cason_sql,7))
		select_sql = "set rowcount " & Cason_PageSize & ";select * from (select top " & Cason_PageSize & " * from (" & set_sql & ") z order by " & th(col_name) & " ) zz order by zz." & col_name 
		set Cason_Rs = yl.GetRs(select_sql,1,1)
		if int(Cason_CurrPage)>Cason_Rs.pagecount then
			Cason_CurrPage = Cason_Rs.pagecount
		end if
		Cason_Rs.PageSize	= Cason_PageSize
		Cason_JsonHtml = ",""iRecCount"":""" & num_rows & """"
		response.write toJSON("""info""",Cason_Rs)
	End Property

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

总结

以上是脚本之家为你收集整理的一个很强大的分页代码。全部内容,希望文章能够帮你解决一个很强大的分页代码。所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ” ,选择关注!
精选程序员所需精品干货内容!

标签: