婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > asp.net 使用js分頁實現異步加載數據

asp.net 使用js分頁實現異步加載數據

熱門標簽:騰訊地圖標注手機 昆明語音電銷機器人價格 柳州電銷機器人公司 400電話如何申請取消 太原400電話上門辦理 百度地圖怎樣做地圖標注 浦發電話機器人提醒還款 征途美甲店地圖標注 電銷語音機器人型號參數
1、準備工作

引入“jquery-1.8.3.min.js”,AjaxPro.2.dll”:用于前臺js調用后臺方法。

2、Web.config的配置
復制代碼 代碼如下:

?xml version="1.0" encoding="utf-8"?>
configuration>
connectionStrings>
clear/>
!-- 數據庫鏈接 -->
add name="connSwtLoginLog" connectionString="Server=DUWEI\SQL2005;Database=SwtLoginLog;user id=sa;password=111111;Connect Timeout=120;pooling=true;min pool size=5;max pool size=10"/>
/connectionStrings>
system.web>
compilation debug="true" targetFramework="4.0" />
!-- 頁面調用后臺方法 -->
httpHandlers>
add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
/httpHandlers>
/system.web>
/configuration>

3、目錄結構
 

下面就直接上代碼了。

4、Login.aspx頁面代碼
復制代碼 代碼如下:

%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="AspNet.Login" %>

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml">
head runat="server">
title>/title>
script src="js/jquery-1.8.3.min.js" type="text/javascript">/script>
script type="text/javascript">
function initTable(dt) {
var str = 'table border="1px">'
+ 'tr>'
+ 'td>'
+ 'LoginID'
+ '/td>'
+ 'td>'
+ 'SwtID'
+ '/td>'
+ 'td>'
+ 'UserName'
+ '/td>'
+ 'td>'
+ 'IP'
+ '/td>'
+ 'td>'
+ 'Address'
+ '/td>'
+ 'td>'
+ 'LogTime'
+ '/td>'
+ 'td>'
+ 'LogType'
+ '/td>'
+ '/tr>';
for (var i = 0; i dt.Rows.length; i++) {
str = str + 'tr>'
+ 'td>'
+ dt.Rows[i]['LoginID']
+ '/td>'
+ 'td>'
+ dt.Rows[i]['SwtID']
+ '/td>'
+ 'td>'
+ dt.Rows[i]['UserName']
+ '/td>'
+ 'td>'
+ dt.Rows[i]['IP']
+ '/td>'
+ 'td>'
+ dt.Rows[i]['Address'] + dt.Rows[i]['Address2']
+ '/td>'
+ 'td>'
+ dt.Rows[i]['LogTime']
+ '/td>'
+ 'td>'
+ dt.Rows[i]['LogType']
+ '/td>'
+ '/tr>'
}
str = str + '/table>';
$("#d1").html(str);
}
function firtPage(page) {
$("#pageNo").text(page);
var dt = AspNet.Login.FindDate(page).value;
initTable(dt);
}
//定義一個當前頁初始為1
var pageNo = 1;
//總頁數
var totalPage = %=pageCount %>;
function showContent(op) {
if (op == "first") {
pageNo = 1;
}
else if (op == "previous") {
if (pageNo > 1)
pageNo -= 1;
else
pageNo = 1;
}
else if (op == "next") {
if (pageNo totalPage - 1)
pageNo += 1;
else
pageNo = totalPage - 1;
}
else if (op == "last") {
pageNo = totalPage - 1;
}
else if(op=="jump"){
var jump = $("#jump").val();
if(jump1 || jump>totalPage){
pageNo = 1;
}else{
pageNo = jump;
}
}
else {
pageNo = 1;
}
firtPage(pageNo);
}
$(function () {
showContent("first");
});
/script>
/head>
body>
form id="form1" runat="server">
div id="d1" align="center">/div>
div align="center">
span id="sp_ShowContent">
第label id="pageNo">/label>頁|共%=pageCount%>頁
|a onclick="showContent('first');" href="javascript:void(0);">首頁/a>
|a onclick="showContent('previous');" href="javascript:void(0);">上一頁/a>
|a onclick="showContent('next');" href="javascript:void(0);">下一頁/a>
|a onclick="showContent('last');" href="javascript:void(0);">尾頁/a>
|跳到input id="jump"/>a onclick="showContent('jump');" href="javascript:void(0);">GO/a>
/span>
/div>
/form>
/body>
/html>

后臺代碼
復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using AspNet.service;

namespace AspNet
{
public partial class Login : System.Web.UI.Page
{
//測試用 沒頁2條數據
public int pageSize = 2;
public int pageCount;
public LoginLogService logService = new LoginLogService();
protected void Page_Load(object sender, EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(Login));
if (!IsPostBack)
{
pageCount = logService.PageCount(pageSize);
}
}
//AjaxPro具體使用方法可以網上例子很多
[AjaxPro.AjaxMethod]
public DataTable FindDate(int currentPage)
{
return logService.FindDate(pageSize, currentPage);
}
}
}

5、LoginLogService.cs
復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;

namespace AspNet.service
{
public class LoginLogService
{
public DataTable FindDate(int pageSize, int currentPage)
{

string sql = "SELECT LoginID,SwtID,UserName,IP,Address,Address2,LogTime,LogType FROM ( "
+ "SELECT * ,ROW_NUMBER() OVER(ORDER BY LoginID) AS columnNum FROM dbo.LoginLog ) a "
+ "WHERE a.columnNum BETWEEN @begin AND @end";
SqlParameter[] paras = new SqlParameter[]{new SqlParameter("@begin",pageSize * (currentPage-1)+1),
new SqlParameter("@end",pageSize * currentPage)};
DataTable dt = DBHelper.GetDataSet(sql, paras);
return DBHelper.GetDataSet(sql, paras);
}
public int PageCount(int pageSize)
{
string sql = "SELECT COUNT(1) FROM dbo.LoginLog";
int rowCount = int.Parse(DBHelper.GetDataSet(sql).Rows[0][0].ToString());
return rowCount % pageSize == 0 ? rowCount / pageSize : rowCount / pageSize+1;
}
}
}

6、Utils放著DBHelper.cs
復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

namespace AspNet
{
public static class DBHelper
{

private static SqlConnection connection;
public static SqlConnection Connection
{
get
{
string connectionString = ConfigurationManager.ConnectionStrings["connSwtLoginLog"].ConnectionString;
if (connection == null)
{
connection = new SqlConnection(connectionString);
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Closed)
{
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Broken)
{
connection.Close();
connection.Open();
}
return connection;
}
}

//ExecuteNonQuery方法是用來執行insert、delete、update語句的,返回的是影響的行數
public static int ExecuteCommand(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = cmd.ExecuteNonQuery();
return result;
}

public static int ExecuteCommand(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
return cmd.ExecuteNonQuery();
}


//ExecuteScalar()返回sql語句執行后的第一行第一列的值,object類型
public static int GetScalar(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = Convert.ToInt32(cmd.ExecuteScalar());
return result;
}

public static int GetScalar(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
int result = Convert.ToInt32(cmd.ExecuteScalar());
return result;
}

//ExecuteReader()返回一個Datareader對象,對象內容是為與命令匹配的所有行,通常用于讀取數據
public static SqlDataReader GetReader(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
}

public static SqlDataReader GetReader(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
}

public static DataTable GetDataSet(string safeSql)
{
connection = Connection;
DataSet ds = new DataSet();
SqlCommand cmd = new SqlCommand(safeSql, Connection);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
cmd.Parameters.Clear();
return ds.Tables[0];
}

public static DataTable GetDataSet(string sql, params SqlParameter[] values)
{
DataSet ds = new DataSet();
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
cmd.Parameters.Clear();
return ds.Tables[0];
}

}
}

復制代碼 代碼如下:

數據表結構:pre code_snippet_id="274427" snippet_file_name="blog_20140404_6_6418355" name="code" class="plain">CREATE TABLE [dbo].[LoginLog](
[LoginID] [int] IDENTITY(1,1) NOT NULL,
[SwtID] [int] NULL,
[UserName] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
[IP] [nvarchar](20) COLLATE Chinese_PRC_CI_AS NULL,
[Address] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
[Address2] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
[LogTime] [datetime] NULL,
[LogType] [int] NULL CONSTRAINT [DEFAULT_LoginLog_LogType] DEFAULT ((1)),
CONSTRAINT [PK_LoginLog_LoginID] PRIMARY KEY CLUSTERED
(
[LoginID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]/pre>
pre>/pre>
pre code_snippet_id="274427" snippet_file_name="blog_20140404_6_6418355" name="code" class="csharp">pre code_snippet_id="274427" snippet_file_name="blog_20140404_6_6418355" name="code" class="sql">pre code_snippet_id="274427" snippet_file_name="blog_20140404_6_6418355">/pre>
pre>/pre>
pre>/pre>
pre>/pre>
pre>/pre>
pre>/pre>

/pre>/pre>
您可能感興趣的文章:
  • asp.net下的異步加載
  • ASP.NET中AJAX的異步加載(Demo演示)

標簽:新疆 白山 德陽 陽泉 天門 江蘇 張家界 蘭州

巨人網絡通訊聲明:本文標題《asp.net 使用js分頁實現異步加載數據》,本文關鍵詞  asp.net,使用,分頁,實現,異步,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《asp.net 使用js分頁實現異步加載數據》相關的同類信息!
  • 本頁收集關于asp.net 使用js分頁實現異步加載數據的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美网站大全在线观看| 国产成人亚洲精品狼色在线| 欧美军同video69gay| 精品亚洲成av人在线观看| 亚洲免费av高清| 久久综合九色综合久久久精品综合 | eeuss鲁一区二区三区| 亚洲不卡av一区二区三区| 国产精品久久久久久久久久久免费看 | 亚洲欧洲精品一区二区三区| 亚洲精品一区二区三区精华液| 欧洲一区二区三区在线| 成人一二三区视频| 成人综合在线网站| 国产九色sp调教91| 国产一区二区三区久久悠悠色av| 日日夜夜免费精品视频| 亚洲一区二区视频| 中文字幕在线观看不卡| 国产精品成人免费精品自在线观看 | 亚洲一区自拍偷拍| 亚洲黄一区二区三区| 亚洲欧美日韩国产成人精品影院| 亚洲色图在线播放| 中文字幕一区二区三区蜜月| 国产丝袜欧美中文另类| 中文字幕精品三区| 国产精品卡一卡二卡三| 成人免费小视频| 亚洲国产成人av| 日韩电影在线免费观看| 免费不卡在线观看| 国产不卡视频一区二区三区| 国产91在线观看丝袜| 99精品视频在线免费观看| 99久久精品免费精品国产| 一本久久a久久精品亚洲| 日本高清成人免费播放| 欧美日韩三级一区二区| 日韩一区二区电影在线| 国产日韩欧美激情| 一区二区三区资源| 视频一区在线播放| 成人综合婷婷国产精品久久| 色综合中文字幕| 日韩一级免费观看| 欧美国产97人人爽人人喊| 日韩码欧中文字| 青青草伊人久久| 国产成人av电影在线播放| 色婷婷久久久综合中文字幕| 欧美一区二区人人喊爽| 国产精品无遮挡| 天堂av在线一区| 成人小视频在线| 欧美日韩中文另类| 久久精品欧美日韩| 亚洲自拍偷拍麻豆| 国产激情一区二区三区四区| 在线观看免费成人| 日韩你懂的电影在线观看| 国产精品国产三级国产普通话99 | 国产精品亚洲人在线观看| 99视频精品在线| 日韩三级视频在线看| 亚洲女同一区二区| 六月丁香婷婷色狠狠久久| 国产99久久久国产精品| 9191久久久久久久久久久| 国产日本亚洲高清| 丝袜美腿高跟呻吟高潮一区| 99久久精品情趣| 精品久久久久久久久久久久久久久| 亚洲激情一二三区| 国产mv日韩mv欧美| 日韩一二三四区| 亚洲6080在线| 91啪九色porn原创视频在线观看| 在线观看欧美黄色| 亚洲欧美一区二区在线观看| 久久成人久久爱| 欧美视频自拍偷拍| 蜜桃精品在线观看| 不卡一区中文字幕| 久久人人爽爽爽人久久久| 午夜不卡av在线| 欧美亚洲精品一区| 亚洲欧洲三级电影| 国产精品综合av一区二区国产馆| 日韩精品中文字幕一区二区三区 | 午夜精品久久久久久久久久| 成人激情免费网站| 国产亚洲精品福利| 国产福利一区二区三区视频| 日韩精品一区国产麻豆| 日韩高清在线不卡| 欧美亚洲另类激情小说| 亚洲一区二区三区四区五区黄 | 欧美高清你懂得| 亚洲视频小说图片| 成人高清免费在线播放| 日韩精品一区第一页| 欧美日韩久久久久久| 亚洲午夜激情av| 欧美人体做爰大胆视频| 日韩av不卡一区二区| 欧美日韩一级视频| 欧美96一区二区免费视频| 欧美一区二区免费观在线| 蜜桃一区二区三区在线观看| 精品久久久久久久久久久久包黑料| 免费的成人av| 国产日本欧洲亚洲| 97久久精品人人爽人人爽蜜臀| 中文字幕在线不卡| 欧美日本高清视频在线观看| 五月婷婷激情综合| 久久久久久久免费视频了| 国产成人av电影在线播放| 中文字幕一区二区在线播放| 欧美吞精做爰啪啪高潮| 久久精品久久99精品久久| 国产欧美日韩综合精品一区二区| 成人性生交大片免费| 亚洲柠檬福利资源导航| 欧美日韩精品一区二区在线播放| 日韩成人一级大片| 国产精品私人影院| 欧美日本免费一区二区三区| 免费人成网站在线观看欧美高清| 久久久不卡网国产精品一区| 色综合一个色综合亚洲| 免费日韩伦理电影| 中文字幕在线播放不卡一区| 欧美一区二区三区婷婷月色 | 91黄色激情网站| 奇米色一区二区| 成人欧美一区二区三区白人| 欧美剧情片在线观看| 高清不卡在线观看av| 午夜亚洲福利老司机| 久久日韩粉嫩一区二区三区| 日本韩国一区二区三区| 美女任你摸久久| 欧美日韩国产综合久久| 成人免费视频视频在线观看免费| 亚洲国产日韩av| 国产精品久久久久久久久久免费看| 欧美高清一级片在线| 91香蕉视频黄| 91精品国产色综合久久不卡蜜臀| 国产91精品一区二区麻豆亚洲| 无码av免费一区二区三区试看 | 国产不卡在线一区| 五月激情丁香一区二区三区| 综合分类小说区另类春色亚洲小说欧美| 3d成人动漫网站| 在线一区二区视频| 成人黄色av网站在线| 精品一区二区免费| 亚洲国产一区二区a毛片| 国产精品久线在线观看| 久久精品在这里| 精品国产三级a在线观看| 粉嫩av亚洲一区二区图片| 伦理电影国产精品| 午夜a成v人精品| 五月天欧美精品| 亚洲电影一级片| 一区二区三区四区在线| 国产精品久久午夜夜伦鲁鲁| 欧美一级一区二区| 91精品国产全国免费观看| 欧美午夜不卡在线观看免费| 色吊一区二区三区| 91浏览器入口在线观看| jiyouzz国产精品久久| 不卡免费追剧大全电视剧网站| 激情图区综合网| 久国产精品韩国三级视频| 免费国产亚洲视频| 久久66热偷产精品| 国产精品538一区二区在线| 国产综合久久久久影院| 狠狠色丁香久久婷婷综| 国产自产高清不卡| 国产福利一区二区三区在线视频| 韩国成人福利片在线播放| 久久国产人妖系列| 国产精品一区二区男女羞羞无遮挡| 激情综合色丁香一区二区| 国产伦精品一区二区三区免费| 精品一区二区成人精品| 国产精华液一区二区三区| 不卡电影一区二区三区| 色综合婷婷久久| 91精品国产手机| 欧美xxxxx裸体时装秀| 国产精品免费视频一区| 日韩一区有码在线|