jQuery入门[5]-AJAX

 jQuery为AJAX提供了非常丰富的支持,参见Ajax
其中最基本当属$ajax(),通过不同的参数,这个方法可以录活支持各种AJAX应用场景。如:

$.ajax({
url: "test.html",
cache: false,
success: function(html){
$("#results").append(html);
}
});
完整参数列表参见:options
当然,常用的应该是这些:
  • load()--直接将AJAX请求结果作为jQuery对象内容
  • $.get()--用get方式请求
  • $.post()--用post方式提交
  • ajaxStart()/ajaxComplete()/ajaxError()……--全局的ajax事件响应


DEMO:
建一个GenericHandler作AJAX请求服务端:CubeHandler.ashx

<% @ WebHandler Language = " C# "  Class = " CubeHandler "   %>

using  System;
using  System.Web;

public   class  CubeHandler : IHttpHandler {
    
    
public   void  ProcessRequest (HttpContext context) {
        context.Response.ContentType 
=   " text/plain " ;
        
int  number  =   0 ;
        
int .TryParse(context.Request.Params[ " number " ],  out  number);
        context.Response.StatusCode 
=   200 ;
        context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
        context.Response.Write(
string .Format( " {0} cubed is {1} " ,number,Math.Pow(number,  3 )));
    }
 
    
public   bool  IsReusable {
        
get  {
            
return   true ;
        }
    }
}

因为用的是Request.Params,所以这个handler能同时支持get和post,

<! 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 >
    
< title > ajax </ title >
    
< script  src ="../scripts/jquery-1.2.3.intellisense.js"  type ="text/javascript" ></ script >
    
< script  type ="text/javascript" >
        $(
function (){
            
// 设置指示器
            $( ' #divIndicator ' ).ajaxStart( function (){$( this ).show()})
                            .ajaxSuccess(
function (){$( this ).hide()})
                            .ajaxError(
function (msg){$( this ).hide();alert(msg);});
            
// ajax get 请求
            $( ' #btnGetCubeInGet ' ).click( function (){
                
var  number  =  $( ' #txtNumber ' ).val();
                $.get(
' CubeHandler.ashx?number= ' + number, function (result){
                    alert(result);
                });
            });
            
            
// ajax post 提交
            $( ' #btnGetCubeInPost ' ).click( function (){
                
var  number  =  $( ' #txtNumber ' ).val();
                $.get(
' CubeHandler.ashx ' ,{ ' number ' :number}, function (result){
                    alert(result);
                });
            });
        });
    
</ script >
    
< style  type ="text/css" >
        .indicator
        
{
            color
:  #FF0000 ;
            position
:  absolute ;
            top
:  0px ;
            right
:  0px ;
            display
:  none ;
        
}
    
</ style >
</ head >
< body >
    
< div  id ="divIndicator"  class ="indicator" >
        
< img  src ="indicator.gif"   /> loading </ div >
    plz input a number:
< input  id ="txtNumber"   />
    
< input  type ="button"  id ="btnGetCubeInGet"  value ="Get cube(get)"   />
    
< input  type ="button"  id ="btnGetCubeInPost"  value ="Get cube(post)"   />
</ body >
</ html >


点击按钮后的效果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值