本文转自:http://www.cnblogs.com/fire-phoenix/archive/2009/11/13/1614146.html

本文介绍如何在ASP.NET(ASP.NET/AJAX)里使用基于JQuery的AJAX技术。(源代码下载见最后)

在使用JQuery前,请到www.jquery.com下载最新版本的js代码,然后再代码里使用

<script src="_scripts/jQuery-1.3.2.js" type="text/javascript"></script>即可, 当然,由于微软已经把JQuery集成到VS里,所以你可以到WWW.ASP.NET/ajax查看

本文将通过六个列子介绍如何在ASP.NET里使用JQuery,其他很容易类比学会。这个项目布局如下图


Sample1:JQuery支持基于Get的AJAX

本例子说明如何在ASP.NET里使用基于JQuery的Get方法。页面布局代码如下: 页面布局很简单,一个文本框用于输入票数,还有一个ID为Error1的div,用于显示AJAX操作结果。 下面是AJAX的方法

在了解代码前,看一下运行结果: 运行效果


在票数后面输入数字,如果大于5,则给出提示信息,否则,则没有。 这里使用了文本框的change事件,所以输入数字后,需要使其失去焦点, 否则看不到结果 下面是对上面代码的简单解释:

    <script language="javascript">

            $(document).ready(function() {

            ...

            }

        </script>

是一个类似英语用法的标准句型,当页面完毕后做某事的意思。 可能有人需要问为什么需要需要这样的类型。这是因为JS的位置不同,需要执行不同的判断。考虑一下到你打开的百度页面,当百度页面加载完毕后,光标会自动定位到输入框

这里它的代码可能类似如下:

<input type="text" id="f">

<script>

var o=document.getElemementById("f");

o.focus(); </script>

在这里,这段脚本必须放在后面,如果这样放置代码

<script>

var o=document.getElemementById("f");

</script>

<input type="text" id="f">

则浏览器在执行时会报错,因此此时文本框还未加载。使用JQuery则不用管那么多,在页面头或者尾部尽管用  $(document).ready(function() {},这也是JQuery的好处。

其他都很简单,概括的说,对于输入框如textbox,select等则用val()获取/设置其值,对于div,p,span等则是html()获取/设置其值,   $.get("GetTicks.aspx", function(result) {…} 表示数据处理会由GetTicks.aspx执行,
GetTicks.aspx很简单,如下

int NoOfTicketsAvailable = 5;

Response.Write(NoOfTicketsAvailable.ToString());

Response.End();

注意:需要Response.End();

这样既OK了。
Sample2:JQuery支持基于Post的AJAX

和Sample1差别不大

代码如下


不过,需要注意的是这里传递了参数TicReq,对于URL,一般都是name=key的方式,例如 default.aspx?id=1,则可以使用Request.QueryString["id"]获取id的值为1,所以上面传递的相当于 GetTicksByPost.aspx?TicReq=ticketsReq (不过,这里的ticketsReq是个变量值,系统自动转换) 所以在GetTicksByPost.aspx里就可用获取该参数

运行结果同上
Sample3:JQuery支持基于ASP.NET AJAX的AJAX

要在ASP.NET AJAX里使用JQuery,需要将EnablePageMethods设置为true。如下

    
接下来,就可以使用ASP.NET AJAJX技术了,如下
 然后使用即可,请注意URL的格式,页面后面跟的是方法

url: "default.aspx/GetAvailableTickets",表示使用default.aspx里定义的GetAvailableTickets方法。 后台代码如下,

注意:需要添加WebMethod修饰符。

Sample3:JQuery支持基于ASP.NET AJAX的AJAX传递参数

下面是主要代码,注意参数是通过data传递的
因为传递了no参数,所以在后台就可用直接使用

注意:这里后天里的参数名需要和前台ajax里定义的参数一样

Sample4:JQuery支持基于ASP.NET AJAX的AJAX传递参数到WebService

如果使用WebService,需要在类前加入

[System.Web.Script.Services.ScriptService]

看下面的代码(在default.js文件里的)

下面是webservice文件,注意红色的标示。


Sample5:建立类似博客园的闪存

[转]jQuery调用ASPX返回json的更多相关文章

  1. ASP.net jQuery调用webservice返回json数据的一些问题

    之前寒假时,试着使用jQuery写了几个异步请求demo, 但是那样是使用的webform普通页面,一般应该是用 webservice 居多. 最近写后台管理时,想用异步来实现一些信息的展示和修改, ...

  2. jQuery调用WebService返回JSON数据

    相信大家都比较了解JSON格式的数据对于ajax的方便,不了解的可以从网上找一下这方面的资料来看一下,这里就不多说了,不清楚的可以在网上查一下,这里只说一下因为参数设置不当引起的取不到返回值的问题. ...

  3. jquery 调用ajax返回json

    ie调用可以,火狐和chrome皆失败,找了半天原因. 被屏蔽了. 火狐和chrome 对同一个域名不同端口的调用也严格限制,不给调用.只能用jsonp. 查看网络的返回状态,错误信息,F12 很重要 ...

  4. 调用AJAX返回JSON、XML数据类型

    1.调用AJAX返回JSON数据 用下拉列表显示Nation表民族名称 主页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transi ...

  5. Jquery调用Webservice传递Json数组

    Jquery由于提供的$.ajax强大方法,使得其调用webservice实现异步变得简单起来,可以在页面上传递Json字符串到Webservice中,Webservice方法进行业务处理后,返回Js ...

  6. jquery实现ajax,返回json数据

    jquery实现ajax可以调用几种方法 我经常用的是$get(url,data,callback,type)方法 其中url是异步请求的页面(可以是.ashx文件),data是参数,callback ...

  7. aspx返回json数据

    JQuery.getJSON 从aspx页面返回JSON数据 . -- ::| 分类: asp.net |举报|字号 订阅 . 发送请求的WebForm1.aspx <%@ Page Langu ...

  8. C#调用接口返回json数据中含有双引号 或其他非法字符的解决办法

    这几天,调用别人接口返回json数据含有特殊符号(双引号),当转换成json对象总是报错, json字符格式如下 { "BOXINFO":[ { ", "ITE ...

  9. Asp.Net_Ajax调用WebService返回Json前台获取循环解析

    利用JQuery的$.ajax()可以很方便的调用 asp.net的后台方法.但往往从后台返回的json字符串不能够正确解析,究其原因,是因为没有对返回的json数据做进一步的加工.其实,这里只需 要 ...

随机推荐

  1. DropDownList 控件的SelectedIndexChanged事件触发不了

    先看看网友的问题: 根据Asp.NET的机制,在html markup有写DropDownList控件与动态加载的控件有点不一样.如果把DropDownList控件写在html markup,即.as ...

  2. Installing the .NET Framework 3.5 on Windows 8, Windows 8.1 and Windows 10

    Installing the .NET Framework 3.5 on Windows 8, Windows 8.1 and Windows 10 .NET Framework (current v ...

  3. UIStepper更加详细的图文理解

    前言 UIStepper是一个微调器,该控件的外观和UISwitch相似,但该控件上包含了+,-两个按钮,共同用于控制某个值的增.减. 它继承了UIControl基类,默认属于活动控件,它可以与用户交 ...

  4. 算法训练 Balloons in a Box (枚举,模拟)

    问题描述 你要写一个程序,使得能够模拟在长方体的盒子里放置球形的气球. 接下来是模拟的方案.假设你已知一个长方体的盒子和一个点集.每一个点代表一个可以放置气球的位置.在一个点上放置一个气球,就是以这个 ...

  5. RxJS的基础

    RxJS是一个强大的Reactive编程库,提供了强大的数据流组合与控制能力,但是其学习门槛一直很高,本次分享期望从一些特别的角度解读它在业务中的使用,而不是从API角度去讲解. RxJS简介 通常, ...

  6. DockerFile一键搭建环境(一)

    点击查看文件详情 FROM centos:7 COPY --chown=root:root nginx /etc/init.d/ Run set -ex \  && yum insta ...

  7. 「BZOJ3065」带插入区间第K小值 替罪羊树×线段树

    题目描述 从前有\(n\)只跳蚤排成一行做早操,每只跳蚤都有自己的一个弹跳力\(a_i\).跳蚤国王看着这些跳蚤国欣欣向荣的情景,感到非常高兴.这时跳蚤国王决定理性愉悦一下,查询区间\(k\)小值.他 ...

  8. linux 基本概念

    Linux把物理内存分为了固定统一大小的块,称为page(页框),一般为4KB. Linux采用4KB页框大小作为标准的物理内存分配单元,内核用数据结构page描述一个页框的状态信息,其实页是进程的概 ...

  9. kuangbin专题十二 HDU1087 Super Jumping! Jumping! Jumping! (LIS)

    Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  10. 开源linux远程登录、远程文件管理(ftp)工具

    ssh远程登录用 PuTTY.Xshell 5 如果觉得命令行下敲命令管理文件麻烦,就用WinSCP.FileZilla Client(SSH模式),可做到文件上传.下载.改权限等等,很便捷