zoukankan      html  css  js  c++  java
  • jQuery $.post $.ajax用法

    jQuery.post( url, [data], [callback], [type] ) :使用POST方式来进行异步请求

    参数:

    url (String) : 发送请求的URL地址.

    data (Map) : (可选) 要发送给服务器的数据,以 Key/value 的键值对形式表示。

    callback (Function) : (可选) 载入成功时回调函数(只有当Response的返回状态是success才是调用该方法)。

    type (String) : (可选)官方的说明是:Type of data to be sent。其实应该为客户端请求的类型(JSON,XML,等等)

    这是一个简单的 POST 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。示例代码:

    Ajax.aspx:

    Response.ContentType = "application/json";Response.Write("{result: '" + Request["Name"+ ",你好!(这消息来自服务器)'}");

    jQuery 代码:

    $.post("Ajax.aspx", { Action: "post", Name: "lulu" },     
       function (data, textStatus){        
        // data 可以是 xmlDoc, jsonObj, html, text, 等等.  
        //this;
        // 这个Ajax请求的选项配置信息,请参考jQuery.get()说到的this  
       alert(data.result);        }, "json");

    点击提交:

    这里设置了请求的格式为"json":


    $.ajax()这个是jQuery 的底层 AJAX 实现。简单易用的高层实现见 $.get, $.post 等。

    这里有几个Ajax事件参数:beforeSend success complete ,error 。我们可以定义这些事件来很好的处理我们的每一次的Ajax请求。

    复制代码
    $.ajax({
    url: 'stat.php',

    type: 'POST',

    data:{Name:"keyun"},

    dataType: 'html',

    timeout: 1000,

    error: function(){alert('Error loading PHP document');},

    success: function(result){alert(result);}

    });
    复制代码

    //add by Q at 2008.11.25

    今天遇到一个jquery的post的小问题

    因为要批量删除,所以开始用循环的post到那个url,然后刷新本页

    这就出现问题了

    复制代码
    $("input[@name='qa_checkbox']").each(function()
    {
        if($(this).attr('checked'== undefined)
        {
                    
        }
        else
        {
            $.post(url,{Action:"POST"},function(data){alert(data);window.location.reload();}, "text");
                    
        }
    })
    复制代码


    这么用的话 只能删除第一条数据;

    复制代码
    $("input[@name='qa_checkbox']").each(function()
    {
        if($(this).attr('checked'== undefined)
        {
                    
        }
        else
        {
            $.post(url+$(this).val(),{Action:"POST"},function(data){alert(data);}, "text");
                    
        }
    })

    window.location.reload();
    复制代码

    这样用的话,虽然可以删除,也能刷新本页,貌似reload是在post的function之前运行,但是post会报错,其中原因有待研究;

    最终想了折中的办法 

    复制代码
    $("input[@name='qa_checkbox']").each(function()
            {
                if($(this).attr('checked'== undefined)
                {
                    
                }
                else
                {
                    url = url + $(this).val() + '_';
                    
                }
            })
            $.post(url,{Action:"POST"},function(data){alert(data);window.location.reload();}, "text");
        }
    复制代码

    把要删除的id连成字符串,用一次post处理,把reload放在post的function里 就没有问题了

  • 相关阅读:
    out/host/linuxx86/obj/EXECUTABLES/aapt_intermediates/aapt 64 32 操作系统
    linux 查看路由器 电脑主机 端口号 占用
    linux proc进程 pid stat statm status id 目录 解析 内存使用
    linux vim 设置大全详解
    ubuntu subclipse svn no libsvnjavahl1 in java.library.path no svnjavahl1 in java.library.path no s
    win7 安装 ubuntu 双系统 详解 easybcd 工具 不能进入 ubuntu 界面
    Atitit.json xml 序列化循环引用解决方案json
    Atitit.编程语言and 自然语言的比较and 编程语言未来的发展
    Atitit.跨语言  文件夹与文件的io操作集合  草案
    Atitit.atijson 类库的新特性设计与实现 v3 q31
  • 原文地址:https://www.cnblogs.com/felix-/p/4330409.html
Copyright © 2011-2022 走看看