C#使用WebService结合jQuery实现无刷新翻页的方法
本文实例讲述了C#使用WebService结合jQuery实现无刷新翻页的方法。分享给大家供大家参考。具体如下:
1.首先创建数据库、表Article,字段ArticleId,Title
前台代码
<%@PageLanguage="C#"AutoEventWireup="true"%>
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<headid="Head1"runat="server">
<title></title>
<scriptsrc="jquery-1.6.4.min.js"type="text/javascript"></script>
</head>
<body>
<formid="form1"runat="server">
<divid="result">
</div>
</form>
<scripttype="text/javascript">
varpageNo=1;//当前页号
varpageItems=10;//每页显示的行数,这个数字与da.Fill(ds,pageNo,3,"gbook");里面的3保持一致
varMaxPage=pageItems;
functionshowPage(m){
if(m==-1){
if(pageNo<2){
alert("已经到了首页");
return;
};
MaxPage=pageItems;
}
else{
if(MaxPage<pageItems){
alert("已经到了末页");
return;
};
}
pageNo+=m;
getData();
}
$(document).ready(function(){
getData();
});
functiongetData(){
$.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="<tableborder='1'>";
$(data).find('Article').each(function(index,ele){
/*Article是后台输出的表名称,要与后台对应*/
varArticleId=$(ele).find('ArticleId').text();
varTitle=$(ele).find('Title').text();
t+="<tr>";
t+="<td>"+ArticleId+"</td>";
t+="<td>"+Title+"</td>";
t+="</tr>";
})
t+="</table>";
t+="<div><ahref=''onclick='showPage(-1);returnfalse;'>上一页</a><ahref=''onclick='showPage(1);returnfalse;'>下一页</a></div>"
$("#result").html(t);
}
});
}
</script>
</body>
</html>
2.后台代码
usingSystem.Data;
usingSystem.Data.SqlClient;
usingSystem;
usingSystem.Web;
usingSystem.Web.Services;
usingSystem.Web.Services.Protocols;
[WebService(Namespace="http://tempuri.org/")]
[WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1)]
//若要允许使用ASP.NETAJAX从脚本中调用此Web服务,请取消对下行的注释
[System.Web.Script.Services.ScriptService]
publicclassWebService3:System.Web.Services.WebService
{
[WebMethod]
publicSystem.Data.DataSetSelect(intpageNo)
{
System.Data.SqlClient.SqlConnectionsqlCon=newSqlConnection();
sqlCon.ConnectionString="server=.;uid=sa;pwd=sa;database=guestbook";
//定义SQL语句
stringSqlStr="SELECTArticleId,TitleFROMArticleORDERBYArticleIdDESC";
//实例化SqlDataAdapter对象
SqlDataAdapterda=newSqlDataAdapter(SqlStr,sqlCon);
DataSetds=newDataSet();
da.Fill(ds,pageNo,10,"Article");
returnds;
}
}
希望本文所述对大家的C#程序设计有所帮助。