Asp.net利用JQuery AJAX实现无刷新评论
2011-03-10 12:49
477 查看
首先在数据库中就建三个字段的表用来存储用户名和评论信息,Id只是为了设置唯一标示,所以设置成整型自增字段就行了。
再建一个HTML页面,只需简单的拉几个html控件出来摆着就行,注意在页面顶部有个<table>标签用来占位输出评论内容。
Html页面代码就这样简单就行了:
viewsourceprint?
然后再页面刚加载的时候,需要从数据库中显示出已有的评论,所以建个后台一般处理程序,命名为:bodyload.ashx。这个后台处理程序就是读取数据库中的所有评论信息,加载到显示页面,当然我这里只是简单的利用|标记来区别每个用户的评论,用@标记来区分用户名和信息,所以不是很严谨。数据操作使用的是强类型的DataSet
获取所有评论信息后台处理代码如下:
viewsourceprint?
前台调用JQuery代码在页面加载时进行读取评论,这里就用到了JQuery中的AJAX了,其实也非常简单,就只是调用JQuery中的$.post()方法就可以实现了,该方法实质还是调用了$.ajax()的方法。
前台JQuery代码如下:
viewsourceprint?
然后来处理每一次用户输入后的插入数据及在页面无刷新更新显示评论内容,需要另外添加一个后台处理一般程序,命名为:update.ashx,用来在后台插入数据到数据库中。
后台处理代码如下:
viewsourceprint?
最后就是在前台将数据传到后台插入,并将评论信息进行更新:
viewsourceprint?
再建一个HTML页面,只需简单的拉几个html控件出来摆着就行,注意在页面顶部有个<table>标签用来占位输出评论内容。
Html页面代码就这样简单就行了:
< body >< table id = "room" > |
</ table > |
< div > |
用户名:< input id = "Text1" type = "text" />< br /> |
信息:< textarea id = "TextArea1" cols = "20" name = "S1" rows = "5" ></ textarea >< br /> |
< input id = "Button1" type = "button" value = "提交" /></ div > |
</ body > |
获取所有评论信息后台处理代码如下:
01 | using System; |
02 | using System.Collections.Generic; |
03 | using System.Linq; |
04 | using System.Web; |
05 | using _20100921Web.DataSetMsgTableAdapters; |
06 | using System.Text; |
07 |
08 | namespace _20100921Web |
09 | { |
10 | ///<summary> |
11 | ///bodyload的摘要说明 |
12 | ///</summary> |
13 | public class bodyload:IHttpHandler |
14 | { |
15 |
16 | public void ProcessRequest(HttpContextcontext) |
17 | { |
18 | context.Response.ContentType= "text/plain" ; |
19 | T_MsgTableAdapteradapter= new T_MsgTableAdapter(); |
20 |
21 | StringBuildersb= new StringBuilder(); |
22 |
23 | DataSetMsg.T_MsgDataTabletable=adapter.GetData(); |
24 |
25 | foreach (varv in table) |
26 | { |
27 | sb.Append(v.Username); |
28 | sb.Append( "@" ); |
29 | sb.Append(v.Message); |
30 | sb.Append( "|" ); |
31 | } |
32 |
33 | Stringresult=sb.ToString(); |
34 |
35 | context.Response.Write(result); |
36 |
37 | } |
38 |
39 | public bool IsReusable |
40 | { |
41 | get |
42 | { |
43 | return false ; |
44 | } |
45 | } |
46 | } |
47 | } |
前台JQuery代码如下:
$.post( "bodyload.ashx" , function (data,state){ |
if (state== "success" ){ |
var msgArr=data.split( "|" ); |
for ( var i=0;i<msgArr.length;i++){ |
if (msgArr[i].length==0){ |
return ; |
} |
var msg=msgArr[i].split( "@" ); |
var res= "<tr><td>" +msg[0]+ "说:</td><td>" +msg[1]+ "</td></tr>" ; |
$( "#room" ).append(res); |
} |
} |
}); |
后台处理代码如下:
using System; |
using System.Collections.Generic; |
using System.Linq; |
using System.Web; |
using _20100921Web.DataSetMsgTableAdapters; |
namespace _20100921Web |
{ |
///<summary> |
///update的摘要说明 |
///</summary> |
public class update:IHttpHandler |
{ |
public void ProcessRequest(HttpContextcontext) |
{ |
context.Response.ContentType= "text/plain" ; |
Stringusername=context.Request[ "username" ]; |
Stringmsg=context.Request[ "msg" ]; |
T_MsgTableAdapteradapter= new T_MsgTableAdapter(); |
adapter.Insert(username,msg); |
} |
public bool IsReusable |
{ |
get |
{ |
return false ; |
} |
} |
} |
} |
$( "#Button1" ).click( function (){ |
var username=$( "#Text1" ).val(); |
var msg=$( "#TextArea1" ).text(); |
$.post( "update.ashx" ,{ "username" :username, "msg" :msg}, function (data,states){ |
if (states== "success" ){ |
var res= "<tr><td>" +username+ "说:</td><td>" +msg+ "</td></tr>" ; |
$( "#room" ).append(res); |
} |
}) |
}) |
相关文章推荐
- Asp.net利用JQuery AJAX实现无刷新评论思路与代码
- Asp.net利用JQuery AJAX实现无刷新评论思路与代码
- Asp.net利用JQuery AJAX实现无刷新评论
- Asp.net利用JQuery AJAX实现无刷新评论
- asp.net利用jquery ajax实现免刷新登录
- 【转】Asp.net利用Ajax实现DataGrid无刷新分页
- ASP.NET利用AJAX Extensions控件实现页面的局部动态刷新
- ASP.NET MVC中 Jquery AJAX 获取数据利用MVC模型绑定实现输出
- 利用ASP.NET实现无刷新更新页面 (1)
- asp.net中利用Jquery+Ajax+Json实现无刷新分页
- ASP.NET利用JavaScript实现无刷新闪烁二级联动菜单
- Asp.net + jQuery + jQuery pager plugin + Sql Server 利用Ajax实现真正的无刷新分页浏览
- Asp.net使用JQuery实现评论的无刷新分页及分段延迟加载效果
- dhl:asp.net mvc下用jQuery ajax方法实现无刷新分页(用户控件)& 整体页面无刷新(2010-11-13 add)
- Asp.net下利用Jquery Ajax实现用户注册检测(验证用户名是否存)
- asp.net中利用Jquery+Ajax+Json实现无刷新分页(二)
- asp.net中利用Jquery+Ajax+Json实现无刷新分页
- ASP.NET利用JavaScript实现无刷新闪烁二级联动菜单
- Asp.net 利用Jquery Ajax实现(验证用户名是否存)用户注册
- ASP.NET利用JavaScript实现无刷新闪烁二级联动菜单