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

主頁 > 知識庫 > asp.net 使用js分頁實現(xiàn)異步加載數(shù)據(jù)

asp.net 使用js分頁實現(xiàn)異步加載數(shù)據(jù)

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

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

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

?xml version="1.0" encoding="utf-8"?>
configuration>
connectionStrings>
clear/>
!-- 數(shù)據(jù)庫鏈接 -->
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;
//總頁數(shù)
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條數(shù)據(jù)
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方法是用來執(zhí)行insert、delete、update語句的,返回的是影響的行數(shù)
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語句執(zhí)行后的第一行第一列的值,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對象,對象內容是為與命令匹配的所有行,通常用于讀取數(shù)據(jù)
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];
}

}
}

復制代碼 代碼如下:

數(shù)據(jù)表結構: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分頁實現(xiàn)異步加載數(shù)據(jù)》,本文關鍵詞  asp.net,使用,分頁,實現(xiàn),異步,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《asp.net 使用js分頁實現(xiàn)異步加載數(shù)據(jù)》相關的同類信息!
  • 本頁收集關于asp.net 使用js分頁實現(xiàn)異步加載數(shù)據(jù)的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产欧美精品一区二区三区四区| 亚洲一区二三区| 国产亲近乱来精品视频| 亚洲欧美日韩系列| 久久99精品国产.久久久久久| 成人高清在线视频| 欧美一级艳片视频免费观看| 国产精品卡一卡二| 黄色资源网久久资源365| 在线观看视频欧美| 亚洲婷婷在线视频| 国产激情偷乱视频一区二区三区| 日韩一区二区免费视频| 亚洲一区二区三区精品在线| 成人黄色777网| 欧美成人免费网站| 日韩中文字幕区一区有砖一区| 欧美一区二区三级| 午夜日韩在线电影| 欧美日韩在线播放一区| 国产精品久久久久久久久免费丝袜 | 亚洲成av人片| 色综合欧美在线视频区| 国产精品天美传媒沈樵| 国产一区啦啦啦在线观看| 欧美高清视频不卡网| 一区二区三区不卡视频在线观看| jlzzjlzz欧美大全| 国产精品天美传媒沈樵| 国产91精品在线观看| 中文字幕精品一区二区三区精品| 国产中文字幕精品| 国产视频视频一区| 国产91丝袜在线18| 亚洲丝袜自拍清纯另类| av激情亚洲男人天堂| 国产精品国产三级国产有无不卡 | 亚洲国产精品久久人人爱| 99国产精品久久久久久久久久久| 国产精品欧美精品| 99天天综合性| 亚洲欧美日韩国产成人精品影院 | 国产白丝精品91爽爽久久| 国产无一区二区| 成人深夜在线观看| 亚洲精品国产一区二区精华液| 色哟哟日韩精品| 亚洲狠狠爱一区二区三区| 欧美一区二区三区四区久久| 国产在线精品国自产拍免费| 国产婷婷色一区二区三区四区| 成人性色生活片免费看爆迷你毛片| 国产精品久久久久久久岛一牛影视| 不卡的av中国片| 亚洲va韩国va欧美va| 日韩精品一区在线观看| 成人手机电影网| 午夜欧美视频在线观看| 精品国产一区二区精华| 成人深夜福利app| 五月天国产精品| 国产精品视频看| 欧美日韩不卡在线| 国产美女在线精品| 夜夜爽夜夜爽精品视频| www成人在线观看| 色八戒一区二区三区| 免费三级欧美电影| 综合亚洲深深色噜噜狠狠网站| 欧美一级日韩一级| 色又黄又爽网站www久久| 免费日韩伦理电影| 亚洲欧美一区二区三区极速播放 | 日韩区在线观看| 成人福利视频网站| 男女男精品视频| 一级中文字幕一区二区| 久久综合久久综合亚洲| 欧美日韩色一区| 成人动漫在线一区| 免费一区二区视频| 亚洲h精品动漫在线观看| 国产精品嫩草99a| 日韩亚洲欧美一区| 欧美在线短视频| 97超碰欧美中文字幕| 国产一区视频网站| 日本vs亚洲vs韩国一区三区二区| 亚洲男同1069视频| 国产精品视频一区二区三区不卡| 欧美成人一区二区三区片免费 | 成人av资源下载| 捆绑调教一区二区三区| 樱花影视一区二区| 中文字幕在线一区二区三区| 欧美精品一区二区三区视频| 欧美绝品在线观看成人午夜影视| av不卡在线播放| 成人av在线一区二区| 国产在线精品免费| 精品中文字幕一区二区小辣椒| 天天色综合天天| 午夜av电影一区| 午夜一区二区三区在线观看| 一区二区三区日韩在线观看| 国产精品国产精品国产专区不蜜 | 在线影院国内精品| 91丨九色丨黑人外教| www.久久久久久久久| 99久久99久久综合| 91丨porny丨蝌蚪视频| 99国产欧美另类久久久精品| 成人黄动漫网站免费app| 成人av在线播放网址| 国产v日产∨综合v精品视频| 不卡av在线网| 色综合色综合色综合色综合色综合 | 国产91丝袜在线播放九色| 国产精品乡下勾搭老头1| 久久99国产精品麻豆| 国产在线看一区| 国产成人综合亚洲91猫咪| 国产一区 二区| 菠萝蜜视频在线观看一区| 91视频www| 欧美男女性生活在线直播观看| 欧美麻豆精品久久久久久| 欧美一区二区三区视频免费播放| 日韩三级中文字幕| 国产亚洲短视频| 一区二区三区产品免费精品久久75| 亚洲成人动漫一区| 狠狠网亚洲精品| 成人av电影在线网| 欧美日韩精品综合在线| 久久综合中文字幕| 国产精品不卡一区| 日韩和欧美一区二区| 国产一区二区三区四区五区美女| 丁香桃色午夜亚洲一区二区三区| 色综合色狠狠天天综合色| 日韩午夜中文字幕| 国产精品福利一区| 日韩成人av影视| av一本久道久久综合久久鬼色| 欧美色爱综合网| 中文字幕精品—区二区四季| 五月天激情综合| 成人视屏免费看| 欧美一级国产精品| 亚洲男人电影天堂| 经典一区二区三区| 欧美亚洲高清一区| 中文字幕av在线一区二区三区| 午夜免费久久看| 丁香五精品蜜臀久久久久99网站| 欧美精品在线视频| 国产精品入口麻豆九色| 麻豆一区二区在线| 欧美少妇一区二区| 国产精品国产三级国产有无不卡 | 五月天久久比比资源色| 成人国产精品免费观看| 欧美va日韩va| 亚洲成年人网站在线观看| 成人午夜精品在线| 精品国产一区二区三区不卡| 一区二区三区精品视频在线| 成人性生交大片免费| 欧美r级在线观看| 亚洲成在人线免费| 波多野结衣在线一区| 久久午夜色播影院免费高清| 青青国产91久久久久久| 色综合天天综合在线视频| 国产亚洲综合在线| 国产在线国偷精品免费看| 91精品婷婷国产综合久久竹菊| 亚洲已满18点击进入久久| av一本久道久久综合久久鬼色| 欧美激情一区二区| 国产成人综合精品三级| 精品乱码亚洲一区二区不卡| 青草av.久久免费一区| 欧美日韩一区二区电影| 亚洲国产一区二区三区青草影视| 一本色道亚洲精品aⅴ| 日韩毛片视频在线看| 91香蕉视频污在线| 亚洲乱码中文字幕| 色婷婷一区二区| 亚洲精品亚洲人成人网| 欧美在线综合视频| 一区二区在线观看免费| 欧美色图片你懂的| 亚洲.国产.中文慕字在线| 欧美老女人在线| 狠狠色丁香久久婷婷综合丁香| 精品嫩草影院久久| 成人听书哪个软件好|