上周写了一些代码,涉及到jquery异步请求,这里归纳总结下,希望对刚接触编程的同学有帮助。

主要习惯使用 art.dialog 框架,非常好用,在异步请求上,它提供了很多简便的方法。

加载使用art.dialog前,需要在页面代码上引入

 <link href="/js/artDialog/css/blue.css" type="text/css" rel="stylesheet" />
 <script type="text/javascript" charset="utf-8" src="/js/artDialog/artDialog.js?skin=default"></script>

在jquery1.9.1版本或以上,不支持live()事件,用

 $(document).on("click","td #id",function(){

 })

替代live事件,响应动态显示的标签。

获得需要的数据:

ajax异步请求前,需要获取参数的值。主要有两种方式可以获得页面传过来的值。

不管是响应button <a> 还是其他,需要在相应标签内添加传来的参数值,如:

 <a id="ajaxQuery" name="xxx" age="18" >ajaxquery</a>

它的响应事件获得参数方法:

$(document).on("click", "#ajaxQuery" , function(){
      var name = $(this).attr('name');
      var age = $(this).attr('age');             //这两种方式是通过获取属性值实现
      var value = $(this).val();                  //通过获取该标签的value值来实现
})    

由于ajax请求一般是异步请求,所以在执行.get类的方法后,这类方法的数据是无法再传给后面的函数调用。

弹框显示:

一般调用art.dialog的基本步骤:

 art.dialog(){
        lock: true,                                  //屏锁
        background:'#333333',                //背景色
        opacity: 0.6,                                //透明度
        title: '标题',
        id: '',
        content: ''                                  //弹框html脚本。
        ok:function() {

       }
 }

在ok : function() {}中写ajax请求脚本,

 $.getJSON('url',function( data ) {
           //url为请求的url,可直接在url后面接参数和值,传参过去
 });

或者

 $.getJSON( 'URL' ,data,function(data) {

 })

data为传递参数。

请求完成后,依据返回来的参数判断是否响应成功,若成功,可返回指定页面

 if ( data.code = 'true' ) {
         window.location.href = 'url';
 }

基本上使用art.dialog整个流程到这里就结束了,接下来,具体谈下这几种ajax请求,和多选项时提交的情况。

多项选,selected情况的多选项情况:

var valueArr = [];
$("#id option:selected").each(function(){
      var value = $(this).val();
      valueArr.push( value );
}

checked多选项时情况:

 var valueArr = [];
 $("#id td .checked").each( function() {
        var value = $(this).val();
        valueArr.push( value );
 }

ajax请求方法:

 $.post("url",{'data':valueArr,'data2': value} ,function( data ) {

 },json);

应对form表单的提交,这里有一个更优的方法:

 var FormValue = $("#FormId").serialize();
 $.get ( "url",FormValue,function(data){
          data = eval("(" + data + ")");     //json decode
          if(data.code === 1001 ) {
                 window.location.href = '/url';
      }
          else {
               return false;
      }
 });

其他ajax当然还有 $.ajax  $.getAjax等,也可以直接 用jquery 的submit事件实现表单提交。

art.dialog 与 ajax 异步请求的更多相关文章

  1. ajax异步请求

    做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...

  2. spring HandlerInterceptorAdapter拦截ajax异步请求,报错ERR_INCOMPLETE_CHUNKED_ENCODING

    话不多说,直接上正文. 异常信息: Failed to load resource: net::ERR_INCOMPLETE_CHUNKED_ENCODING 问题描述: 该异常是在页面发送ajax请 ...

  3. jquery Ajax异步请求之session

    写了一个脚本,如下: $(function () { $("#btnVcode").click(function () { var receiveMobile = $(" ...

  4. ajax异步请求Response.Redirect重定向

    一个ajax异步请求报错->捕获异常->重定向错误提示页面.  一个简单的流程 结果一直搞不定.重定向无效.各种百度之. 后来突然想起 ajax的请求是不能在后台重定向的. 如果硬要重定向 ...

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

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

  6. MVC&WebForm对照学习:ajax异步请求

    写在前面:由于工作需要,本人刚接触asp.net mvc,虽然webform的项目干过几个.但是也不是很精通.抛开asp.net webform和asp.net mvc的各自优劣和诸多差异先不说.我认 ...

  7. AJAX异步请求原理和过程

    AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML),它不是一种新的编程语言,而是一种使用现有标准的新方法. AJAX 基于 JavaS ...

  8. Ajax异步请求-简单模版

    <script type="text/javascript"> window.onload = function () { document.getElementByI ...

  9. ajax异步请求不能刷新数据的问题

    搞了两三天的问题,今天解决了.总结下: function reportGrpChange(cuid, title){ document.getElementById('reportFrameDiv') ...

随机推荐

  1. ASP.NET用HttpListener实现文件断点续传

    本文转载:http://www.cnblogs.com/TianFang/archive/2007/01/03/610739.html 断点续传的原理很简单,就是在Http的请求和应答的报文头上和一般 ...

  2. Bootstrap-分页插件Paginator

    Bootstrap Paginator是一款基于Bootstrap的js分页插件,功能很丰富,个人觉得这款插件已经无可挑剔了.它提供了一系列的参数用来支持用户的定制,提供了公共的方法可随时获得插件状态 ...

  3. VS2005配置CPPUnit进行单元測试

    一. 编译CPPUnitproject 1.  解压文件cppunit-1.12.1.tar.gz. 2.  编译$BASE/src/cppunit/CppUnitLibraries.dsw中的cpp ...

  4. Java解惑五:类之谜

    本文是依据JAVA解惑这本书,做的笔记.电子书见:http://download.csdn.net/detail/u010378705/7527721 谜题46 函数重载的问题. JAVA重载解析过程 ...

  5. Linux下Join命令

    Linux下Join命令 最近新上线算法,打算分析起点书籍点击率的波动,原来已经有流程每天每本书籍的点击率数据(文件).之前这种情况都是写代码对不同天的进行合并,后来发现linux下直接就有join命 ...

  6. careercup-递归和动态规划 9.7

    9.7 编写函数,实现许多图片编辑软件都支持的“填充颜色”功能.给定一个屏幕(以二维数组表示,元素为颜色值).一个点和一个新的颜色值,将新颜色值填入这个点的周围区域,直到原来的颜色值全部改变. 类似l ...

  7. iOS开发中常用到的加密方式

    1 base64 1.1 简介 Base64编码的思想是是采用64个基本的ASCII码字符对数据进行重新编码.它将需要编码的数据拆分成字节数组.以3个字节为一组.按顺序排列24位数据,再把这24位数据 ...

  8. extjs6整合到web项目中

    最近有一个项目需要应用extjs作为前端界面,因此研究了一下如何将extjs 6引入到项目中.以下是操作步骤 extjs6下载地址 extjs 6有gpl版本的,下载地址https://www.sen ...

  9. Unity3D 之UGUI 文本框和编辑框

    这里来讲解一下unity3D自带的UI功能,自带的UI也叫UGUI功能非常的强大,比起NGUI,更加的灵活,让用户能够更加容易的去使用. 首先创建一个文本Text 然后是文本相对应的属性 这里的属性比 ...

  10. asp.net Ajax Post 请求一般处理程序

    其实很早就开通博客园了,一直想写些有价值的东西,供自己以后查阅的同时,也可以帮助别人遇到此类问题时能有一个好的解决方法.但是由于各种原因, 就没有实施我的想法.今天突然很想写下一篇文章,不知道我的第一 ...