在ASP中,当阅读页面上的新闻文章时,如何为带图片的文章设置自动分页?
下面这个ASP页面的例子是按内容分页。你可以运行它,看看你是否想要这个代码。
& lt% @ LANGUAGE = & quotVBSCRIPT & quotCODEPAGE = & quot936 & quot% & gt
& lt%
sitePath = & quotdata.mdb & quot
昏暗的连接
设置conn =服务器。CreateObject("adodb.connection & quot)
conn.open & quotprovider = Microsoft . jet . oledb . 4.0;数据源= & quot& server . mappath(& quot;/& quot;&站点路径)
设置rs =服务器。CreateObject("adodb.recordset & quot)
sql = & quotselect * from Aspcms_News其中NewsID = 5 & quot
康涅狄格州rs.open sql,1,1
如果不是,那么
numbers = len(RS(& quot;内容& quot)) '总字节数
pagenum = 900 & # 39每页显示的数量
maxpage =-int(-numbers/pagenum)& # 39;总页数
requestpage=clng(请求("p & quot))'接收页码
if requestpage = & quot”或者requestpage=0那么& # 39;获取默认页码。
requestpage=1
如果…就会结束
if requestpage & gtmaxpage然后& # 39;当当前页面的页码大于最大页码时,使当前页码等于最大页码。
requestpage=maxpage
如果…就会结束
如果不是requestpage=1,那么& # 39;当前页码不等于1时,下移相应的字节数。
content = mid(RS(& quot;内容& quot),(requestpage-1)*pagenum
1,900)
其他
内容=左(RS(& quot;内容& quot),900) '当页码等于1时,截取相应的文本。
如果…就会结束
如果isempty(requestpage ),则
thispage=1
其他
thispage=cint(请求页面)
如果…就会结束
% & gt
& lthtml & gt& lthead & gt
& ltmeta http-equiv = & quot;内容类型& quotcontent = & quot文本/html;charset = gb2312 & quot& gt
& lttitle & gt超长文本数据分页
& lt/head & gt;
& ltbody & gt
& lt表格宽度= & quot470 & quotborder = & quot0 & gt;单元格间距= & quot0 & gt;& gt
& lttr & gt
& lttd height = & quot33 quot;& gt& ltdiv align = & quot中心& quot& gt& ltstrong & gt& lt% = RS(& quot;标题& quot)% & gt& lt/strong & gt;& lt/div & gt;& lt/TD & gt;
& lt/tr & gt;
& lttr & gt
& lttd & gt& lt字体大小= & quot2 & quot& gt& lt%'= content % & gt& lt%=Replace(content,chr(13),& quot& ltbr & gt”)% & gt& lt/font & gt;& lt/TD & gt;
& lt/tr & gt;
& lttr & gt
& lttd align = & quot右& quot& gt
& lt字体大小= & quot2 & quot& gt总页数:< % = maxpage % & gt当前页面:< % = requestpage % & gt& lta href = & quotcontent_page.asp?p = 1 & quot& gt第1页</a & gt;& lta href = & quotcontent_page.asp?p = & lt% =(request page-1)% & gt;"& gt上一页</a & gt;& lta href = & quotcontent_page.asp?p = & lt% =(request page
1)% & gt;”& gt下一页
& lt/TD & gt;
& lt/tr & gt;
& lttr & gt
& lttd align = & quot右& quot& gt
& lti=1到maxpage的百分比
如果thispage=i那么
response.write & quot”& i & & quot”
else % & gt
[& lt;a href = & quotcontent_page.asp?p = & lt% = i % & gt”& gt& lt% = i % & gt& lt/a & gt;]
& lt% end if % & gt
& lt% next % & gt
& lt/TD & gt;
& lt/tr & gt;& lt/table & gt;
& lt%
其他
回应。写(& quot没有内容”)
如果…就会结束
% & gt
& lt/body & gt;& lt/html & gt;
linq分页方法怎么用?
使用linq进行分页,参考方法如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
int CurPage = 1;
int PageSize = 5;
int.TryParse(Request, out CurPage);
if (CurPage == 0)
CurPage = 1;
//获取总数据集合
IList<ContentsModel> objs = new List<ContentsModel>();
objs = Contents.GetAllContents();
//绑定数据显示控件
GridView1.DataSource = QueryByPage(PageSize, CurPage, objs);
GridView1.DataBind();
//获取分页目录
this.Label1.Text = GetQueryPagesMenu(PageSize, objs);
}
}
/// <summary>
/// 输入分页字符页码
/// </summary>
/// <param name=”PageSize”></param>
/// <param name=”objs”></param>
/// <returns></returns>
protected string GetQueryPagesMenu(int PageSize, IList<ContentsModel> objs)
{
int Count;
var db = objs;
var query = from cms_contents in db select cms_contents;
Count = (query.Count() / PageSize + 1);//不足一页按一页算
string PageMenu = “”;
//拼接分页目录
for (int i = 1; i <= Count; i++)
{
PageMenu += “<a href=’?CurPage=” + i.ToString() + “‘>” + i.ToString() + “</a> | “;
}
return PageMenu;
}
/// <summary>
/// 获