博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET Ajax 实现无刷新分页
阅读量:5368 次
发布时间:2019-06-15

本文共 3941 字,大约阅读时间需要 13 分钟。

使用Ajax的UpdatePanel控件和DataList控件 实现的无刷新分页。

详细过程:

1.1.  启动sqlserver,创建数据库ajax数据库中创建sale表,点击新建查询,写入代码:

create table sale
(
    sid char(5)  primary key,    --销售编号
    pid char(5),        --商品编号
    pname varchar(50),    --商品名称
    unit varchar(4),    --单位
    number int,        --销售数量
    price decimal,        --单价
    sdate datetime,        --销售日期
    people varchar(20)    --经手人
)
go
2.1  点击文件-新建-网站,命名WebAjax,点击确定按钮。
2.2.在默认项目中 添加个web窗体,命名为Default
2.3.在Default页面中,拖入一个ScriptManager控件,再拖入一个UpdatePanel控件
2.4.在UpdatePanel中拖入一个DataList控件,用来显示和分页 数据库中的商品数据;
2.5.写好DataList中数据模版和 模版样式
2.6.拖入三个个Lable控件,Lable1用来显示当前页,Lable2用来显示总页数,Lable3存储当前页码
2.7.拖入四个Button控件,Button1用来控制 显示首页数据,Button2用来控制 显示上一页数据,
Button3用来控制 显示下一页数据,Button4用来控制 显示尾页数据,
2.8,写后台cs代码,调试并成功。

1.前台:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>    Ajax实验        
销售编号 商品编号 商品名称 单位 销售数量 单价 销售日期 经手人
<%# DataBinder.Eval(Container.DataItem, "sid")%> <%# DataBinder.Eval(Container.DataItem, "pid")%> <%# DataBinder.Eval(Container.DataItem, "pname")%> <%# DataBinder.Eval(Container.DataItem, "unit")%> <%# DataBinder.Eval(Container.DataItem, "number")%> <%# DataBinder.Eval(Container.DataItem, "price")%> <%# DataBinder.Eval(Container.DataItem, "sdate")%> <%# DataBinder.Eval(Container.DataItem, "people")%>
2.后台
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data.SqlClient;using System.Data;public partial class _Default : System.Web.UI.Page{    SqlConnection sqlcon = new SqlConnection(@"server=.\sqlexpress;database=ajax;integrated security=SSPI");    public string strsql = "SELECT * FROM sale";    PagedDataSource page = new PagedDataSource();    protected void Page_Load(object sender, EventArgs e)    {        BindList(1);    }    private void BindList(int index)    {        SqlDataAdapter adp = new SqlDataAdapter(strsql, sqlcon);        sqlcon.Open();        DataSet dst = new DataSet();        adp.Fill(dst, "table");        DataTable tab = new DataTable();        tab = dst.Tables["table"];        page.DataSource = tab.DefaultView;        //分页实现        page.PageSize = 3;        page.AllowPaging = true;        page.CurrentPageIndex = index - 1;        this.Label1.Text = index.ToString();        this.Label2.Text = page.PageCount.ToString();        DataList1.DataSource = page;        DataList1.DataBind();        sqlcon.Close();    }    protected void Button1_Click(object sender, EventArgs e)    {        BindList(1);        Label3.Text = "1";    }    protected void Button2_Click(object sender, EventArgs e)//上一页    {        if (Convert.ToInt32(Label3.Text) == 1)        {            BindList(1);            Label3.Text = "1";        }        else        {            BindList(Convert.ToInt32(Label3.Text)-1);            Label3.Text = (Convert.ToInt32(Label3.Text)-1).ToString();        }    }    protected void Button3_Click(object sender, EventArgs e)//下一页    {        if (Convert.ToInt32(Label3.Text) == (page.PageCount - 1))        {            BindList(page.PageCount);            Label3.Text = page.PageCount.ToString();        }        else        {            BindList(Convert.ToInt32(Label3.Text) + 1);            Label3.Text = (Convert.ToInt32(Label3.Text) + 1).ToString();        }    }    protected void Button4_Click(object sender, EventArgs e)    {        BindList(page.PageCount);        Label3.Text = page.PageCount.ToString();    }}

转载于:https://www.cnblogs.com/chenpan/p/3661857.html

你可能感兴趣的文章
JavaScript中的BOM和DOM
查看>>
spring注入Properties
查看>>
jmeter(五)创建web测试计划
查看>>
1305: [CQOI2009]dance跳舞 - BZOJ
查看>>
将html代码中的大写标签转换成小写标签
查看>>
jmeter多线程组间的参数传递
查看>>
零散笔记
查看>>
信息浏览器从Android的浏览器中传递cookie数据到App中信息浏览器
查看>>
hash储存机制
查看>>
OpenLayers绘制图形
查看>>
tp5集合h5 wap和公众号支付
查看>>
Flutter学习笔记(一)
查看>>
iOS10 国行iPhone联网权限问题处理
查看>>
洛谷 P1991 无线通讯网
查看>>
mysql asyn 示例
查看>>
数据库第1,2,3范式学习
查看>>
《Linux内核设计与实现》第四章学习笔记
查看>>
Docker 安装MySQL5.7(三)
查看>>
CSS: caption-side 属性
查看>>
CSS3中box-sizing的理解
查看>>