本文实例讲述了C#使用WebService结合jQuery实现无刷新翻页的方法。分享给大家供大家参考。具体如下:
1. 首先创建数据库、表Article,字段ArticleId,Title
前台代码
<%@ Page Language=\"C#\" AutoEventWireup=\"true\" %>
<!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 id=\"Head1\" runat=\"server\">
<title></title>
<script src=\"jquery-1.6.4.min.js\" type=\"text/javascript\"></script>
</head>
<body>
<form id=\"form1\" runat=\"server\">
<div id=\"result\">
</div>
</form>
<script type=\"text/javascript\">
var pageNo = 1; //当前页号
var pageItems = 10; //每页显示的行数,这个数字与da.Fill(ds,pageNo,3,\"gbook\");里面的3保持一致
var MaxPage = pageItems;
function showPage(m) {
if (m == -1) {
if (pageNo < 2) {
alert(\"已经到了首页\");
return;
};
MaxPage = pageItems;
}
else {
if (MaxPage < pageItems) {
alert(\"已经到了末页\");
return;
};
}
pageNo += m;
getData();
}
$(document).ready(function () {
getData();
});
function getData() {
$.ajax({
type: \"POST\",
cache: false,
url: \"WebService3.asmx/Select\",
/* 注意后面的名字对应CS的方法名称 */
data: { \"pageNo\": (pageNo - 1) * pageItems },
/* 注意参数的格式和名称 */
contentType: \"application/x-www-form-urlencoded\",
dataType: \"xml\",
error: function (result) {
alert(result.responseText);
},
success: function (data) {
MaxPage = $(data).find(\'Article\').size();
/* Article是后台输出的表名称,要与后台对应 */
if (MaxPage == 0) {
$(\"#result\").html(\"没有记录\");
return;
}
t = \"<table border=\'1\'>\";
$(data).find(\'Article\').each(function (index, ele) {
/* Article是后台输出的表名称,要与后台对应 */
var ArticleId = $(ele).find(\'ArticleId\').text();
var Title = $(ele).find(\'Title\').text();
t += \"<tr>\";
t += \"<td>\" + ArticleId + \"</td>\";
t += \"<td>\" + Title + \"</td>\";
t += \"</tr>\";
})
t += \"</table>\";
t += \"<div><a href=\'\' onclick=\'showPage(-1);return false;\'>上一页</a> <a href=\'\' onclick=\'showPage(1);return false;\'>下一页</a></div>\"
$(\"#result\").html(t);
}
});
}
</script>
</body>
</html>
2. 后台代码
using System.Data;
using System.Data.SqlClient;
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
[WebService(Namespace = \"http://tempuri.org/\")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
//若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释
[System.Web.Script.Services.ScriptService]
public class WebService3 : System.Web.Services.WebService
{
[WebMethod]
public System.Data.DataSet Select(int pageNo)
{
System.Data.SqlClient.SqlConnection sqlCon = new SqlConnection();
sqlCon.ConnectionString = \"server=.;uid=sa;pwd=sa;database=guestbook\";
//定义SQL语句
string SqlStr = \"SELECT ArticleId,Title FROM Article ORDER BY ArticleId DESC\";
//实例化SqlDataAdapter对象
SqlDataAdapter da = new SqlDataAdapter(SqlStr, sqlCon);
DataSet ds = new DataSet();
da.Fill(ds, pageNo, 10, \"Article\");
return ds;
}
}
希望本文所述对大家的C#程序设计有所帮助。
本文地址:https://www.stayed.cn/item/8513
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我