`

Asp.net利用JQuery AJAX实现无刷新评论

阅读更多
首先在数据库中就建三个字段的表用来存储用户名和评论信息,Id只是为了设置唯一标示,所以设置成整型自增字段就行了。







再建一个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>




然后再页面刚加载的时候,需要从数据库中显示出已有的评论,所以建个后台一般处理程序,命名为:bodyload.ashx。这个后台处理程序就是读取数据库中的所有评论信息,加载到显示页面,当然我这里只是简单的利用|标记来区别每个用户的评论,用@标记来区分用户名和信息,所以不是很严谨。数据操作使用的是强类型的DataSet



获取所有评论信息后台处理代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using _20100921Web.DataSetMsgTableAdapters;
using System.Text;

namespace _20100921Web
{
    /// <summary>
    /// bodyload 的摘要说明
    /// </summary>
    public class bodyload : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            T_MsgTableAdapter adapter = new T_MsgTableAdapter();

            StringBuilder sb = new StringBuilder();

            DataSetMsg.T_MsgDataTable table = adapter.GetData();

            foreach (var v in table)
            {
                sb.Append(v.Username);
                sb.Append("@");
                sb.Append(v.Message);
                sb.Append("|");
            }

            String result = sb.ToString();

            context.Response.Write(result);

        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}


前台调用JQuery代码在页面加载时进行读取评论,这里就用到了JQuery中的AJAX了,其实也非常简单,就只是调用JQuery中的$.post()方法就可以实现了,该方法实质还是调用了$.ajax()的方法。



前台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);
                    }
                }
            });




然后来处理每一次用户输入后的插入数据及在页面无刷新更新显示评论内容,需要另外添加一个后台处理一般程序,命名为:update.ashx,用来在后台插入数据到数据库中。



后台处理代码如下:



?
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(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            String username = context.Request["username"];
            String msg = context.Request["msg"];

            T_MsgTableAdapter adapter = 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);
                    }
                })
            })
  • 大小: 3.8 KB
分享到:
评论

相关推荐

    Asp.net利用JQuery AJAX实现无刷新评论思路与代码

    Asp.net利用JQuery AJAX实现无刷新评论,此功能是每一个从事asp.net开发者的朋友都希望实现的,本文利用闲暇时间整理了一些,有需要的朋友可以参考下

    asp.net+jquery+ajax无刷新用户注册,登录,修改密码

    每个页面都可能结合了ASP.NET服务器控件、jQuery脚本以及Ajax调用来实现无刷新功能。注册页面可能有输入字段验证,登录页面有身份验证,密码修改页面则涉及安全验证,如旧密码确认等。 在实际开发中,为了确保安全...

    基于asp.net和jquery技术实现无刷新上传头像和图片剪裁

    ASP.NET提供了多种实现无刷新上传的方法。一种常见的方法是使用UpdatePanel控件,它创建了一个局部刷新的区域,允许在后台执行服务器端操作。另一种方法是利用ASP.NET AJAX库,该库包含一个FileUpload控件,可以与...

    asp.net+jquery+ajax无刷新最简单实用的例子

    综上所述,这个实例提供了一个基础但实用的方法,展示了如何利用ASP.NET C#和jQuery的Ajax功能实现网页的无刷新数据交互。开发者可以通过分析这些文件,学习如何在自己的项目中集成类似的Ajax功能,提高网页的响应...

    ASP.NET jquery ajax无刷新上传文件demo

    综上所述,这个示例提供了从客户端到服务器端的完整文件上传流程,利用jQuery的AJAX功能和uploadify插件实现了无刷新上传,同时在ASP.NET的HTTP Handler中处理文件,确保了上传过程的流畅性和用户体验。对于学习ASP...

    asp.net使用jquery ajax 小例子

    在本教程中,我们将探讨如何在ASP.NET中利用jQuery的AJAX功能来调用后台处理程序或Web服务。 首先,我们需要理解ASP.NET中的AJAX基础。ASP.NET AJAX库提供了一整套服务,包括UpdatePanel、ScriptManager、...

    asp.net+ajax实现无刷新聊天室

    ASP.NET和AJAX技术结合创建无刷新聊天室是一种常见的Web应用程序开发方法,它提供了一种高效、用户友好的交互体验。下面将详细讲解这个话题。 首先,ASP.NET是由微软开发的一种用于构建动态Web应用程序的框架,它...

    asp.net 利用jquery-ajax调用后台方法

    在ASP.NET中,结合jQuery的AJAX功能,我们可以实现无刷新更新页面,提高用户体验。AJAX(Asynchronous JavaScript and XML)的核心是通过JavaScript在后台与服务器进行少量数据交换,无需重新加载整个网页。 在ASP...

    asp.net+jquery+ajax所有调用例子

    通过这些实例,开发者可以了解如何在ASP.NET中有效地利用jQuery和AJAX技术,提高用户体验,实现快速、无刷新的页面更新,并能处理各种返回数据类型,如XML、HTML、JSON等。在实际开发中,这样的技术组合被广泛应用于...

    Asp.Net MVC之jQuery与AJAX操作实例

    在Asp.Net MVC框架中,jQuery和AJAX的结合使用极大地提升了用户体验,使得网页能够实现异步数据交互,无需刷新整个页面即可完成数据的增删查改操作。本实例将深入探讨如何在Asp.Net MVC项目中应用jQuery与AJAX。 一...

    asp.net中利用Jquery+Ajax+Json实现无刷新分页

    为了解决这个问题,我们可以利用jQuery、Ajax和JSON技术来实现无刷新分页。这个主题的"asp.net+Jquery+Ajax+Json"压缩包提供了一个完整的示例,展示了如何在ASP.NET中集成这些技术。 首先,jQuery是一个轻量级的...

    Asp.net 用jQuery 实现Ajax的效果方法

    在Asp.net开发中,利用jQuery实现Ajax效果可以极大地提升用户体验,因为它允许页面部分更新而无需刷新整个页面。Ajax(Asynchronous JavaScript and XML)技术通过异步方式与服务器通信,使得用户界面更加流畅和响应...

    Asp.net+Ajax做的无刷新聊天室

    本项目“Asp.net+Ajax做的无刷新聊天室”充分利用了两者的优势,实现了用户实时聊天和在线用户列表展示的功能,无需页面刷新。 1. **Ajax的核心原理** Ajax的核心在于创建XMLHttpRequest对象,通过这个对象与...

    Asp.net Ajax+JQuery 无刷新文件上传

    "Asp.net Ajax+JQuery 无刷新文件上传"的实现主要是通过利用异步传输(Ajax)更新页面部分区域,而无需整个页面刷新,同时结合jQuery的便利性,可以实现更为流畅的用户交互。 首先,我们需要理解Ajax的基本原理。...

    一个基于ASP.net+Jquery+GridView实现无刷新TreeGrid源码例子

    【ASP.NET + jQuery + GridView 实现无刷新TreeGrid详解】 在Web开发中,TreeGrid是一种常见且实用的数据展示控件,它将树形结构和表格数据结合在一起,为用户提供了一种直观、高效的浏览和操作数据的方式。这个...

    .NET手写代码Ajax实现无刷新

    4. **服务器端处理**:在.NET中,服务器端通常由ASP.NET的WebForm、MVC或者WebAPI等框架处理Ajax请求。处理程序接收请求,执行业务逻辑,并准备响应数据。 5. **响应处理**:服务器返回的数据(通常是JSON或XML格式...

    【ASP.NET编程知识】asp.net中利用Jquery+Ajax+Json实现无刷新分页的实例代码.docx

    "ASP.NET编程知识:ASP.NET中利用Jquery+Ajax+Json实现无刷新分页的实例代码" 本文将详细介绍如何使用Jquery、Ajax和Json技术在ASP.NET中实现无刷新分页的实例代码。通过本文,读者将了解到无刷新分页的实现原理、...

    ASP.NET使用jquery插件无刷新上传文件

    ASP.NET结合jQuery实现无刷新文件上传是一种常见的前端与后端交互技术,主要用于提高用户体验,避免传统文件上传时页面刷新导致的中断。在这个场景中,我们使用了`jquery.ajaxfileupload.js`这个插件,它利用了...

    ASP.net+jQuery无刷新多文件上传

    一款基于ASP.net+jQuery的无刷新多文件上传系统,轻松实现AJAX无刷新上传文件,没有使用任何第三方控件,全是用ASP.NET自写程序实现的上传,一次可以上传多个文件,用到了jQuery插件来控制程序的执行,可以适合添加...

Global site tag (gtag.js) - Google Analytics