Ajax - 异步调用后台程序 -JSON

时间:2022-10-01 20:44:45
  1. 在ASP.NET使用ajax时基本上每个操作都要新建一个.ashx处理程序,页面很多,每个页面的操作也很多,这样的话项目就会产生新建很多很多的.ashx页面,能不能把方法写在后台中,然后Jquery直接调用呢?答案自然是可以的,这样做的话程序就看起来简洁多了。
  2. 前段时间下载CSDN上的资源时,我发现它们添加评论的那个功能蛮酷的,点一下 添加 按钮,评论即时显示在了最上方。下午想了下,写了一个Demo,其中 添加评论 的功能就是通过jquery调用后台方法完成的。具体代码如下:

 前台页面代码CsdnAddComment.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CsdnAddComment.aspx.cs"
Inherits="Study.CsdnAddComment" %> <!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>仿CSDN添加评论</title>
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#btnComment").click(function () {
var txtComment = $("#txtComment").val();
$.ajax({
type: "post",
url: "CsdnAddComment.aspx/AddComment",
data: " { 'comment':'" + txtComment + "'}",
contentType: "application/json; charset=utf-8",
datatype: "json",
success: function (message) {
$("#Comment").append('<div class="NewComment">' + txtComment + '</div>');
$("#NewComment").next().slideToggle();
}
});
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<center>
<div style="width: 50%">
新闻列表:
<asp:Repeater ID="rpNews" runat="server">
<ItemTemplate>
<div>
<%#DataBinder.Eval(Container.DataItem, "news_title")%>
</div>
<hr />
</ItemTemplate>
</asp:Repeater>
<div id="Comment">
</div>
</div>
<div>
<textarea id="txtComment" rows="8" cols="70"></textarea><br />
<input type="button" value="评论" id="btnComment"/>
</div>
</center>
</form>
</body>
</html>

  

后台代码CsdnAddComment.aspx.cs

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Services; namespace Study
{
public partial class CsdnAddComment : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.GetNewsList();
}
} /// <summary>
/// 获取新闻列表
/// </summary>
private void GetNewsList()
{
News n = new News();
List<News> newsList = n.GetNewsList();
rpNews.DataSource = newsList;
rpNews.DataBind();
} //添加新评论
[WebMethod]
public static string AddComment(string comment)
{
string sqlStr = "insert into tb_news(news_title,news_content,news_time,news_readtimes) values('" + comment + "','内容','2011/6/8','100')";
if (SQLHelper.ExecuteNonQuery(sqlStr) > 0)
{
return "success";
}
else
{
return "failed";
}
}
}
}

Ajax - 异步调用后台程序 -JSON的更多相关文章

  1. jquery ajax异步调用

    写程序的第一步都要知其然,至于知其所以然就要看个人的爱好了.下面说一下web开发中经常用的ajax. 这里是用的jquery框架实现的ajax异步调用.废话少说先上代码.(asp.net开发) var ...

  2. JS常用方法总结,及jquery异步调用后台方法实例

    //前台接收get参数值 function getQueryString(name) {            var queryStrings = window.location.search.sp ...

  3. AJAX JQuery 调用后台方法返回值(不刷新页面)

    AJAX JQuery 调用后台方法返回值(不刷新页面) (1)无参数返回值(本人亲试返回结果不是预期结果) javascript方法: $(function () {             //无 ...

  4. jquery中ajax异步调用接口

    之前写过一个原始的.无封装的页面,没有引入任何外部js,直接实例化Ajax的XmlRequest对象去异步调用接口,参见Ajax异步调用http接口后刷新页面,可对比一下. 现在我们用jquery包装 ...

  5. jquery的ajax异步请求接收返回json数据

    http://www.jb51.net/article/51122.htm jquery的ajax异步请求接收返回json数据方法设置简单,一个是服务器处理程序是返回json数据,另一种就是ajax发 ...

  6. PHP中实现异步调用多线程程序代码

    本文章详细的介绍了关于PHP中实现异步调用多线程方法,下面我们以给1000个用户发送一封推荐邮件,用户输入或者导入邮件账号了提交服务器执行发送来讲述. 比如现在有一个场景,给1000个用户发送一封推荐 ...

  7. Ajax异步请求struts的JSON机制&lpar;省市区三级联动&rpar;

    1.struts.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts P ...

  8. 浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法(转载)

    在调用一个jquery的ajax方法时我们有时会需要该方法返回一个值或者给某个全局变量赋值,可是我们发现程序执行完后并没有获取到我们想要的值,这时很有可能是因为你用的是ajax的异步调用async:t ...

  9. Ajax异步调用使用

    //验证通知号重复 function checkinformcodeagage() { var informcode = $("#txtinformcode").val(); if ...

随机推荐

  1. java代理模式之静态代理

    作为一个初级开发者,可能不会接触到代理模式,但是在很多框架的使用中都不知不觉使用了代理模式,比如servlet的过滤器链,spring的AOP,以及spring mvc的拦截器等.所以了解代理模式对于 ...

  2. 一步一步学习ABP项目系列文章目录

    1.概述 基于DDD的.NET开发框架 - ABP初探 基于DDD的.NET开发框架 - ABP分层设计 基于DDD的.NET开发框架 - ABP模块设计 基于DDD的.NET开发框架 - ABP启动 ...

  3. oracle怎样用触发器将一张表的数据添加到另外一张表中

    好吧,我就假设你两个表的数据结构相同吧create table TabA( address varchar2(50), press varchar2(50), city varchar2(50) )/ ...

  4. c&num; 对话框交换数据

    本例是一个管理联系人信息的小程序,程序有两个窗体,一个主窗体,在listview控件中显示联系人信息列表,一个对话框窗体,用来显示和修改 某个联系人的信息.通过主窗体的菜单命令,可以打开对话框,并把主 ...

  5. &lt&semi;&quest;php function say&lpar;&rpar; &lbrace; echo &&num;39&semi;hello world&&num;39&semi;&semi; &rcub; &sol;&sol;在这里调用函数 say&lpar;&rpar;&semi; php 调用方法say&lpar;&rpar;

    <?php function say() {     echo 'hello world'; } //在这里调用函数 say(); php 调用方法say()

  6. nginx HTTP&sol;2&period;0 配置

    1.前言 最近无意中看到http2.0消息,发现自己的博客虽然配了https,但并没有配置http2.0,所以搞了个玩玩,本以为配个参数就搞定了,结果还是折腾了一个小时. 2.过程 nginx并没有默 ...

  7. XML的解析(DOM以及SAX方式)

    感谢http://blog.csdn.net/redarmy_chen/article/details/12951649(关于SAX解析)以及http://blog.csdn.net/zhangerq ...

  8. composer lavarel 安装

    一:packagist库:https://packagist.org/packages/laravel/laravel 二:composer安装 // 安装到laravel文件夹 composer c ...

  9. WPS&comma; 破解WPA&sol;WPA2密钥的捷径

    1.关于WPS(WIFI保护设置) WPS(WIFI保护设置)主要致力于简化无线网络的安全加密设置. 传统方式下,用户新建一个无线网络时,必须在接入点手动设置网络名(SSID)和安全密钥,然后在客户端 ...

  10. dispatchEvent相关内容

    意思就是:手动触发事件. 我的理解是:类似于jquery中的trigger方法,可以在点击某个dom的时候,触发另一个dom的事件,下面一个我自己尝试的例子: <!DOCTYPE html&gt ...