jQuery入门[5]-AJAX

2016-02-19 13:54 1 1 收藏

今天图老师小编给大家精心推荐个jQuery入门[5]-AJAX教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

【 tulaoshi.com - Web开发 】

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
    titleajax/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

点击按钮后的效果:

来源:https://www.tulaoshi.com/n/20160219/1605610.html

延伸阅读
标签: Web开发
jQuery.post( url, [data], [callback], [type] ) :使用POST方式来进行异步请求 参数: url (String) : 发送请求的URL地址. data (Map) : (可选) 要发送给服务器的数据,以 Key/value 的键值对形式表示。 callback (Function) : (可选) 载入成功时回调函数(只有当Response的返回状态是success才是调用该方法)。 type (String) : ...
标签: Web开发
load()方法是jQuery中最为简单和常用的Ajax方法,能载入远程HTML代码并插入到DOM中。它的语法结构为: load( url [, data][, callback] ) load()方法参数解释见下表: 参数名称 类 型 说 明 urlString请求HTML页面的URL地址data(可选)Object发送至服务器的key/value数据callback(可选)Function请求完成时的回调函数,无论...
标签: Web开发
一些简单的代码简化 下面是一个简单示例,它说明了 jQuery 对代码的影响。要执行一些真正简单和常见的任务,比方说为页面的某一区域中的每个链接附加一个单击(click)事件,您可以使用纯 JavaScript 代码和 DOM 脚本来实现,如 清单 1 所示。 清单 1 :没有使用 jQuery 的 DOM 脚本 var external_links = document.getElementById('exte...
标签: Web开发
代码如下: html xmlns="http://www.w3.org/1999/xhtml" head runat="server" title/title script src="script/jquery-1.3.2.js" type="text/jscript"/script script type="text/jscript" function show(num) { var params = '{str:"'+ num+'"}'; $.ajax({ type: "POST", url: "default.aspx/aa", data: params, dataType: "text"...
标签: Web开发
实际上在用PHP上传文件时。。。只能用$_FILES形式,但是若我们只是单一的用JS方式取其ID,如input id='img' type='file'..document.getElementById('img').value或者jquery形式的$("#img")都是不能正真实际上传的(但是还是有很多人这样做,刚开始时我也是)。 可是功能上又要要求实现所谓的“异步上传”,怎么办呢??只能借助于第三方的组件...