DataList控件分页

实现了对DataList的分页 HTML控件的值需要转换web应用程序就可以取到了 
ContractedBlock.gifExpandedBlockStart.gif
  1ExpandedBlockStart.gifContractedBlock.gif /**//// <summary>
  2        /// 当前页数
  3        /// </summary>

  4        int CurrentPage;
  5ExpandedBlockStart.gifContractedBlock.gif        /**//// <summary>
  6        /// 每页条数
  7        /// </summary>

  8        int PageSize;
  9ExpandedBlockStart.gifContractedBlock.gif        /**//// <summary>
 10        /// 总页数
 11        /// </summary>

 12        int PageCount;
 13ExpandedBlockStart.gifContractedBlock.gif        /**//// <summary>
 14        /// 总条数
 15        /// </summary>

 16        int RecordCount;
 17
 18ExpandedBlockStart.gifContractedBlock.gif        /**//// <summary>
 19        /// 页面首次加载
 20        /// </summary>
 21        /// <param name="sender">发送对象</param>
 22        /// <param name="e">事件参数</param>

 23        protected void Page_Load(object sender, EventArgs e)
 24ExpandedBlockStart.gifContractedBlock.gif        {
 25            PageSize = 2;//每页数据记录
 26
 27            if (!IsPostBack)
 28ExpandedSubBlockStart.gifContractedSubBlock.gif            {
 29                CurrentPage = 0;//当前页习惯设为0
 30                ViewState["PageIndex"= 0;//页索引也设为0
 31
 32                //计算总共有多少记录
 33                RecordCount = CalculateRecord();
 34
 35                //计算总共有多少页
 36                if (RecordCount % PageSize == 0)
 37ExpandedSubBlockStart.gifContractedSubBlock.gif                {
 38                    PageCount = RecordCount / PageSize;
 39                }

 40                else
 41ExpandedSubBlockStart.gifContractedSubBlock.gif                {
 42                    PageCount = RecordCount / PageSize + 1;
 43                }

 44
 45                this.TotalLbl.Text = PageCount.ToString();//显示总页数
 46                ViewState["PageCount"= PageCount;
 47
 48                this.DataListBind();
 49            }

 50        }

 51
 52
 53ExpandedBlockStart.gifContractedBlock.gif        /**//// <summary>
 54        /// 计算记录数
 55        /// </summary>
 56        /// <returns></returns>

 57        private int CalculateRecord()
 58ExpandedBlockStart.gifContractedBlock.gif        {
 59            try
 60ExpandedSubBlockStart.gifContractedSubBlock.gif            {
 61                int recordCount;
 62                SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["ConnectionString"].ToString());
 63                con.Open();
 64
 65                string sql = "select count(*) as count from cps_adinfo";
 66                SqlCommand cmd = new SqlCommand(sql, con);
 67                SqlDataReader sdr = cmd.ExecuteReader();
 68
 69                if (sdr.Read())
 70ExpandedSubBlockStart.gifContractedSubBlock.gif                {
 71                    recordCount = Int32.Parse(sdr["count"].ToString());
 72                }

 73                else
 74ExpandedSubBlockStart.gifContractedSubBlock.gif                {
 75                    recordCount = 0;
 76                }

 77
 78                sdr.Close();
 79                con.Close();
 80
 81                return recordCount;
 82            }

 83
 84            catch (Exception ex)
 85ExpandedSubBlockStart.gifContractedSubBlock.gif            {
 86                throw new Exception(ex.Message);
 87            }

 88        }

 89
 90
 91ExpandedBlockStart.gifContractedBlock.gif        /**//// <summary>
 92        /// 将数据绑定到Datalist控件
 93        /// </summary>

 94        public void DataListBind()
 95ExpandedBlockStart.gifContractedBlock.gif        {
 96            try
 97ExpandedSubBlockStart.gifContractedSubBlock.gif            {
 98                int StartIndex = CurrentPage * PageSize;//设定导入的起终地址
 99
100                string sql = "select * from cps_adinfo";
101
102                DataSet ds = new DataSet();
103                SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ConnectionString"].ToString());
104                con.Open();
105
106                SqlDataAdapter sda = new SqlDataAdapter(sql, con);
107                //Fill方法的第一次重载
108                sda.Fill(ds, StartIndex, PageSize, "cps_adinfo");
109
110                this.TextDataList.DataSource = ds.Tables["cps_adinfo"].DefaultView;
111                this.TextDataList.DataBind();
112                this.PreviousLB.Enabled = true;
113                this.NextLB.Enabled = true;
114                if (CurrentPage == (PageCount - 1)) this.NextLB.Enabled = false;//当为最后一页时,下一页链接按钮不可用
115                if (CurrentPage == 0this.PreviousLB.Enabled = false;//当为第一页时,上一页按钮不可用
116                this.CurrentLbl.Text = (CurrentPage + 1).ToString();//当前页数
117
118            }

119
120            catch (Exception ex)
121ExpandedSubBlockStart.gifContractedSubBlock.gif            {
122                throw new Exception(ex.Message);
123            }

124        }

125
126ExpandedBlockStart.gifContractedBlock.gif        /**//// <summary>
127        /// 按钮点击事件
128        /// </summary>
129        /// <param name="sender"></param>
130        /// <param name="e"></param>

131        public void LinkButton_Click(Object sender, CommandEventArgs e)
132ExpandedBlockStart.gifContractedBlock.gif        {
133            CurrentPage = Int32.Parse(ViewState["PageIndex"].ToString());//获得当前页索引
134            PageCount = Int32.Parse(ViewState["PageCount"].ToString());//获得总页数
135
136            string cmd = e.CommandName; //判断cmd,以判定翻页方向
137            switch (cmd)
138ExpandedSubBlockStart.gifContractedSubBlock.gif            {
139                case "prev"://上一页
140                    if (CurrentPage > 0) CurrentPage--;
141                    break;
142
143                case "next":
144                    if (CurrentPage < (PageCount - 1)) CurrentPage++;//下一页
145                    break;
146
147                case "first"://第一页
148                    CurrentPage = 0;
149                    break;
150
151                case "end"://最后一页
152                    CurrentPage = PageCount - 1;
153                    break;
154
155                case "jump"://跳转到第几页
156                    if (this.TextBox1.Value.Trim() == ""
157                        || Int32.Parse(this.TextBox1.Value.Trim()) > PageCount
158                        || Int32.Parse(this.TextBox1.Value.Trim()) == 0)
159                      
160ExpandedSubBlockStart.gifContractedSubBlock.gif                    {
161                        return;
162                    }

163                    else
164ExpandedSubBlockStart.gifContractedSubBlock.gif                    {
165                        CurrentPage = Int32.Parse(this.TextBox1.Value.ToString()) - 1;
166                        break;
167                    }

168            }

169            ViewState["PageIndex"= CurrentPage;//获得当前页
170            this.DataListBind();
171            
172        }
  

分页跳转时做了判断 不会报异常了
下面是设计页
ContractedBlock.gifExpandedBlockStart.gifCode
 1  <asp:DataList ID="TextDataList" runat="server" Width="100%" DataKeyField="adid" EnableViewState="False"
 2                    CssClass="pic" Font-Overline="False">
 3                    <ItemTemplate>
 4                        <class="piczt">
 5                            文字链内容:
 6                            <asp:Label ID="lal" runat="server" Text='<%# Eval("adtitle") %>'></asp:Label><br />
 7                        </p>
 8                                               <div class="picco">
 9                            <class="picco1">
10                                 <asp:TextBox ID="txtHtmlCode" TextMode="MultiLine" Rows="3" Columns="40" Text='<%# Eval("htmlcode") %>'
11                                            runat="server" ReadOnly="true" EnableViewState="false"></asp:TextBox>
12                            </p>
13                            <class="picco2">
14                                <asp:TextBox ID="txtForumCode" TextMode="MultiLine" Rows="3" Columns="40" Text='<%# Eval("forumcode") %>'
15                                            runat="server" ReadOnly="true" EnableViewState="false"></asp:TextBox>
16                             </p>
17                        </div>
18                        <div class="picco">
19                            <class="picco1">
20                             <input name="button1" type="button"  class="an2" value="复制广告代码" onclick="setTxt('<%# Eval("htmlcode") %>')"/>
21                                    复制广告代码</button>
22                            </p>
23                            <class="picco2">
24                                <input name="button1" type="button" class="an2" value="复制论坛代码" onclick="setTxt('<%# Eval("forumcode") %>')"/>
25                                    复制论坛代码</button>
26                            </p>
27                        </div>
28                        <class="piczt">
29                            产品名称:鞋 产品ID:123456789</p>
30                        <class="piczt">
31                            提成比例:10%</p>
32                        <class="piczt">
33                            <span class="zi2">注意:</span> 您的联盟 ID, abcdef , 已经包含在代码中</p>
34                    </ItemTemplate>
35                    <ItemStyle Width="100%" />
36                </asp:DataList>
37                <div class="page">
38                    共<asp:Label ID="TotalLbl" runat="server"></asp:Label>页, 当前第<asp:Label ID="CurrentLbl"
39                        runat="server"></asp:Label>
40                    <asp:LinkButton ID="FirstLB" runat="server" OnCommand="LinkButton_Click" CommandName="first"
41                        Font-Overline="False">[ 首页 | </asp:LinkButton>
42                    <asp:LinkButton ID="PreviousLB" runat="server" OnCommand="LinkButton_Click" CommandName="prev"
43                        Font-Overline="False">上一页 | </asp:LinkButton>
44                    <asp:LinkButton ID="NextLB" runat="server" OnCommand="LinkButton_Click" CommandName="next"
45                        Font-Overline="False">下一页 | </asp:LinkButton>
46                    <asp:LinkButton ID="EndLB" runat="server" OnCommand="LinkButton_Click" CommandName="end"
47                        Font-Bold="False" Font-Overline="False">末页 ]</asp:LinkButton>
48                    <asp:LinkButton ID="JumpLB" runat="server" OnCommand="LinkButton_Click" CommandName="jump"
49                        Font-Overline="False">跳到</asp:LinkButton>
50                    <input id="TextBox1" runat="server" type="text" name="TextBox1" style="width: 30px"
51                        onkeyup="value=value.replace(/[^\d]/g,'')" />
52                </div>
53
54
功能上除了分页 还有一个复制文本框的方法
    <script type="text/javascript">
        function setTxt(obj) {
            window.clipboardData.setData('text', obj);
            alert("复制成功!");
        }
    </script>

转载于:https://www.cnblogs.com/uranuschen/archive/2009/07/21/1527833.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381277.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

现代php 阅读笔记,PHP 手册阅读笔记 - 语言参考篇

最近计划把 PHP手册&#xff0c;认真的先过一遍。记录一些以前不知道&#xff0c;不明确的知识。语言参考 > 类型【新认知】强制转换类型用 settype( mixed $var, string $type )。判断变量的类型用is_type函数。例如&#xff1a;if (is_int($an_int)) {$an_int 4;}if (is_…

mongodb连接失败_mongodb 数据库及数据分页

本文转载于 SegmentFault 社区作者&#xff1a;小小蚊子在做自己的一个小项目时&#xff0c;新学习了 mongodb非关系型数据库&#xff0c;使用了 mongoose封装好的查询方法&#xff0c;包括数据库分页用到的limit和 skip 方法&#xff0c;这里记录下。一mongodb 数据库连接参照…

mysql 关联查询_Mysql查询优化器,再也不会因为该什么时候建立索引发愁了

优化器的作用&#xff1a;我们知道&#xff0c;一条SQL语句&#xff0c;可以有很多执行方式&#xff0c;最后都返回相同的结果&#xff0c;而优化器的作用就是找到最好的执行计划。一、RBO-基于规则的优化器(rule)系统内置的一套硬编码规则&#xff0c;根据规则生成执行计划&am…

购物车的收货地址js php,Javascript实现购物车功能的详细代码

我们肯定都很熟悉商品购物车这一功能&#xff0c;每当我们在某宝某东上购买商品的时候&#xff0c;看中了哪件商品&#xff0c;就会加入购物车中&#xff0c;最后结算。购物车这一功能&#xff0c;方便消费者对商品进行管理&#xff0c;可以添加商品&#xff0c;删除商品&#…

CLI下的网页浏览器之二——Lynx

出自&#xff1a;http://vb2005xu.javaeye.com/blog/230044 Lynx浏览器使用指南 Lynx是一个字符界面下的全功能的WWW浏览器。Lynx 可以运行在很多种操作系统下&#xff0c;如VMS, UNIX, Windows 95, Windows NT等&#xff0c;当然也包括Linux。 由于没有漂亮的图形界面&#xf…

stm32 整数加法循环时间_【教学设计】小数加法教学设计

小数加法教学设计刘秀锦舞钢市特殊教育学校教材分析本节课是第四单元“小数加减法”的第一课时&#xff0c;小数加减法是以整数加减法为基础进行教学的&#xff0c;本节课走踏实了&#xff0c;后边的知识才能顺利的进行下去&#xff0c;所以本节课还是以小步走、学一点、练一点…

天锐绿盾解密_天锐绿盾数据防泄密系统

天锐绿盾数据防泄密系统&#xff08;简称数据防泄密系统&#xff09;是一套从源头上保障数据安全和使用安全的软件系统。包含了文件透明加解密、内部文件流转、密级管控、离线管理、文件外发管理、灵活的审批流程、工作模式切换、服务器白名单等功能&#xff0c;并全面覆盖Mac、…

矩阵维度必须一致_如何从看得懂到会使用矩阵思维

本来我一开始是想学习如何使用艾森豪威尔矩阵的&#xff0c;但是利用学习观的方法想去网上找有关艾森豪威尔矩阵的例子时&#xff0c;发现网上几乎没有&#xff0c;网上能搜出来的都是对这个矩阵的介绍&#xff0c;看完这些介绍你会发现很简单&#xff0c;都能看懂&#xff0c;…

numpy 归一化_归一化(MinMax)和标准化(Standard)的区别

此文参考https://blog.csdn.net/u010947534/article/details/86632819定义上的区别归一化&#xff1a;将数据的值压缩到0到1之间&#xff0c;公式如下标准化&#xff1a;将数据所防伪均值是0&#xff0c;方差为1的状态&#xff0c;公式如下&#xff1a;归一化、标准化的好处&am…

python多态_Python基础入门18节-第十六节 面向对象如何理解多态

多态是面向对象的一大特性&#xff0c;Python本身也是一门多态性的语言。在Python中要实现多态&#xff0c;还是得借助于上节提到的继承。假设有这么一个场景&#xff0c;在夏季我们可以看到荷花、牡丹花、太阳花&#xff0c;夏天一到这些花全都开放了。这些花我们就将它理解多…

linux重启后root密码错误,Linux技巧| 解决Debian Root密码忘记的问题

Debian Root密码忘记开机 grub 菜单下进入单用户模式进行修改密码/修改系统文件。解决过程注&#xff1a;本教程适用于 Debian 7 8 91. 首先。重启一下系统。在开机 grub 内核选择菜单那里&#xff0c;迅速按“e”。2. 将光标移动到“linux”开头的那一行&#xff0c;将原来的“…

SilverLight学习笔记--Silverlight中WebService通讯

本文我们学习如何在Silverlight中使用WebService进行通讯。 新建项目Silverlight应用程序&#xff0c;命名为&#xff1a;SLWebService。在服务器端我们需要做两项目工作: 1、在Web项目中新建一个类Person&#xff0c;我们将在WebService中返回它的实例化对象。Person类定义如下…

导出文件_一招解决PDF文件导出图片

将PDF文件保存为高清图片是经常需要进行的保存方式之一&#xff0c;因为PDF文件虽然安全性高&#xff0c;但是相比较图片而言&#xff0c;还是不易进行查看的&#xff0c;那么如何将PDF文件导出图片呢&#xff1f;以前也了解过很多方法&#xff0c;不过最好的当然不是截图了。虽…

linux缓存文件用户权限错误,CVE-2019-11244漏洞到底该如何修复?--关于缓存文件权限设置...

2019年5月&#xff0c;Kubernetes社区(后面简称”社区“)修复了标号为CVE-2019-11244的安全漏洞&#xff0c;这个修复方案似乎并不彻底&#xff0c;于是有人发布Issue对此提出异议&#xff0c;希望提供进一步修复方案。虽然Kubernetes已经非常安全&#xff0c;但对于一些安全标…

高中数学40分怎么办_2019年第35届全国高中数学联赛试题及参考答案

2019年第35届全国高中数学联赛考试已结束&#xff0c;本文收集整理本次数学联赛的试题和参考答案&#xff0c;以供大家了解参考。本次数学联赛由全国高中数学联赛组委会统一命题&#xff0c;共分为一试和二试。一试时间为80分钟&#xff0c;包括8道填空题(每题8分)和3道解答题(…

一个把图片保存到SQL数据库的工具

因公司的业务需要,会把很多图片保存到数据库中.因此做了一个很简单的工具,把图片保存到SQL数据库中.1.可以连接到不同服务器上的SQL数据库,可以选择操作各个表;2.可以指定保存到数据库的图片格式(JPG or BMP);3.可以用windows图片和传真查看器预览图片.下载地址:一个把图片保存…

redis 哨兵_Redis哨兵机制的原理介绍

php中文网最新课程每日17点准时技术干货分享本篇文章给大家带来的内容是介绍Redis的哨兵机制&#xff0c;让大家了解哨兵机制的原理和如何实现。有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对你有所帮助。概述Redis的复制有一个缺点&#xff0c;当主…

BoooLee pyretoolkit -- 一个基于python re模块的在线正则表达式测试工具

为了学习python re模块正则表达式&#xff0c;寻找了一些正则表达式工具&#xff0c;除了komodo捆绑的rx toolkit外&#xff0c;其他的测试工具都是基于.net或其他引擎的&#xff0c;语法上多少有点出入。 干错自己写一个&#xff0c;用了2天时间&#xff0c;python re googl…

【大数据】NiFi 的基本使用

NiFi 的基本使用 1.NiFi 的安装与使用1.1 NiFi 的安装1.2 各目录及主要文件 2.NiFi 的页面使用2.1 主页面介绍2.2 面板介绍 3.NiFi 的工作方式3.1 基本方式3.2 选择处理器3.3 组件状态3.4 组件的配置3.4.1 SETTINGS&#xff08;通用配置&#xff09;3.4.2 SCHEDULING&#xff0…

linux 如何打包分区文件,Linux基础------文件打包解包---tar命令,文件压缩解压---命令gzip,vim编辑器创建和编辑正文件,磁盘分区/格式化,软/硬链接...

作业一&#xff1a;1)将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖)cat /etc/passwd /etc/group > /1.txt2)将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件/2.txt(追加)cat /etc/passwd /etc/shadow >> /2.txt3)将/1.txt、/2.…