Ajax不执行回调函数的原因(转)】的更多相关文章

今天用ajax的post请求后台,但是始终不执行回调函数,经查得知,ajax不执行回调函数的原因如下: jquery中规定返回的JSON字符串的KEY要用引号括起来,如{“result”: 1}这样才可以. 所以是数据返回的格式问题,如把dataType设置为json,那么就需要按照json的格式将数据返回,如设置为text,则无需是json的数据格式.…
jquery Ajax 不执行回调函数success的原因: $.ajax({ type: "post", contentType: "application/json", url: basePath+"pages/Tongji/disposeAgree.action?cepingitem="+cepingitem+"&userrelation="+userrelation, //data: {fenshu:8},da…
判断类型: var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios 执行回调函数: if (isAndroid) { blin.CallAndroid(xxxx, yyyyy); } if (isiOS) {  va…
最近遇到一个问题,发现使用jquery的ajax方法时,回调方法无法执行,而使用$.load()方法时却能正确返回数据.经过长时间调试最终发现是自己粗心大意,原来后台返回的是json数据,而返回的数据是使用字符串拼接为json数据,拼接时缺少了逗号分隔,导致返回的json数据格式错误,导致执行了error中的回调函数,并未执行success的回调函数. 错误的数据如下: for (ZFMPA zfmpa : list) { json="{\"nbr\":\"&quo…
原因一般是  dataType:'json' 数据类型设置成了json  ,去掉这个设置即可 $.ajax({ }) 回调函数返回的值 用对象,下标,键值对访问不到时,考虑是否返回数据为字符串 考虑是否返回数据为字符串   检验方式:typeof   data…
如下常见的ajax前端请求,请求成功后success:function(result){ 这里的数据没有执行 }: $.ajax({ type:"post", url:"http://localhost:8080/user/insertUser", xhrFields:{widthCredentials:true},//这里解决跨域问题需要结合后端哦 data:{ "username":$("#username").val()…
$.getJSON() 方法使用 AJAX 的 HTTP GET 请求获取 JSON 数据. 语法 1 $.getJSON(url,data,success(data,status,xhr)) url必填规定请求发送到那个url: data可选规定发送到服务器的数据: success可选data包含服务器返回的数据, status包含请求的状态,("success"."notmodified"."error"."timeout"…
register_shutdown_function — Register a function for execution on shutdown. ps:Registers a callback to be executed after script execution finishes or exit() is called. 1.脚本时常死掉,而且并不总是那么好看.我们可不想给用户显示一个致命错误,又或者一个空白页(在display_errors设为off的情况下) . PHP中有一个叫…
我们都知道jQuery为ajax请求封装了success和error两个回调方法,其实jQuery也实现了为非ajax请求的普通方法也设计了绑定回调函数的方法. 当一个方法需要等待另一个耗时很长的方法完成之后才能执行的时候,我们非常希望可以监听这个耗时的方法. 示例: var wait = function(){ var deferred = $.Deferred(); //在函数内部,新建一个Deferred对象 var tasks = function(){ alert("执行完毕!&quo…
有些时候我们需要动态的加载一些JS,并在JS加载完成后执行一些回调函数. var loadscript = { $$: function (id) { return document.getElementById(id); }, tag: function (element) { return document.getElementsByTagName(element); }, ce: function (element) { return document.createElement(elem…
1,后台返回的数据是标准json格式,前端dataType也是josn, 2,没有跨域访问, 但是一直只执行error方法, 原因出在: 应设置为button按钮,指明类型为button…
前端代码 <script language="javascript" type="text/javascript" src="<?php echo base_url();?>/js/jquery-1.7.2.min.js"></script> <script> function add_ip(bip,eip,area_id) { var action = "<?php echo si…
调用函数 checkAjax('addrinfo',formdata,vzxcv); 函数checkAjax function checkAjax(url,formdata,call_back){ //判断url,对返回的值进行不同的操作 var url = DOMAIN + url; $.ajax({ type : 'get', async : false, url : url, crossDomain : true, dataType : "jsonp", data : formd…
<result type="json"  name="success">                 <param name="includeProperties">msg.*,对象.*</param>                <!--  <param name="includeProperties">msg</param> -->      …
在success:function(data){}下面加个error:function(){},看看是不是出错了走了error.如果是,说明返回值类型不符合要求. 比如:下面代码返回String类型. @RequestMapping(value = "/v1/doUpdate", method = RequestMethod.GET) @ResponseBody public String doUpdate(HttpServletRequest request, HttpServlet…
一,再一次理解回调函数 (function($){ $.fn.shadow = function(opts){ //定义的默认的参数 var defaults = { copies: 5, opacity:0.1, //回调函数 copyOffset:function(index){ return{x:index,y:index}; } }; //将opts的内容合并到default中. var options = $.extend(defaults,opts); return this.eac…
1.1开发中遇到的问题 最近开发中我和同事都碰到这样的问题,我们使用jQuery的ajax方法做服务端的校验,在success方法里将验证结果存储到一个js的公共变量或者是页面里的隐藏域,接下来的代码我们会根据这个公共的js变量或者是这个隐藏域里的值判断下一步的操作,但是这样做的结果很让人失望,我们发现js公共变量的值或者是隐藏域的值并没有改变,从而导致我们下面的代码无法正常运行.下面我模拟这个问题产生的代码,代码如下: callback.js: <%@ page language="ja…
原文地址:jquery中ajax回调函数使用this 写ajax请求的时候success中代码老是不能正常执行,找了半天原因.代码如下 $.ajax({type: 'GET', url: "/flag/", data: dat, success:function(){ $(this).prevAll('p').css("text-decoration","line-through"); } }); 最后发现是ajax中的回调函数(success等…
今天在写ajax请求的的时候success中代码老是不能正常执行,找了半天的原因,代码如下: 1 $.ajax({type: 'GET', 2 url: url, 3 data: oData, 4 success:function(){ 5 $(this).prevAll('p').css("text-decoration","line-through"); 6 } 7 }); 最后发现是ajax中的回调函数(success等)直接用this不灵,解决办法是使用bi…
JS是单线程的程序,在某些方面来讲并不是十分准确.在浏览器的内核里面有很多的模块,比如js的解释执行的模块,html.css的处理模块,渲染模块等,多数模块是单线程执行的,但是有几个模块是多线程的,比如定时器模块,Dom事件监听(如按钮点击的事件监听)模块,Ajax请求模块,这几个模块都是有回调函数的,也就是说浏览器内核会在使用这几个模块的时候另外开辟一条线程来进行监听,达到条件后通过回调函数返回主线程. 例子: 1. setTimeout(function(){ console.log('ti…
目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制和通信方式 3.Chrome扩展开发之三——Chrome扩展中的数据本地存储和下载 4.Chrome扩展开发之四——核心功能的实现思路 5.Chrome扩展开发之五——采用指数退避算法实现ajax请求的重发,全部完成时触发回调函数 如果你对GmailAssist感兴趣,可以在chrome商店中搜索“…
$.ajax({ options:/*类型:Object;  可选.AJAX 请求设置.所有选项都是可选的.*/ async:/*类型:Boolean; 默认值: true.默认设置下,所有请求均为异步请求.如果需要发送同步请求,请将此选项设置为 false. 注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行.*/ beforeSend(xhr):/*类型:Function; 发送请求前可修改 XMLHttpRequest 对象的函数,如添加自定义 HTTP 头. XMLHtt…
今天遇到一特郁闷的问题,如题:$.post()返回数据正常,但不执行success回调函数.说它郁闷是因为没毕业之前就遇到过解决了,却没有记录下来,导致卡了一下午. 像这样,post返回数据正常,但却不执行回调函数,一直在转呀转呀转,可以看错json数据的key没有双引: 而在后台处理时加上双引号后: 后面特意查了下,原来json格式的key都是有双引号的,其他的格式都是畸形...…
什么是回调函数 In computer programming, a callback is a piece of executable code that is passed as an argument to other code, which is expected to call back (execute) the argument at some convenient time[引自 维基百科 callback] 回调函数是一段可执行的代码段,它作为一个参数传递给其他的代码,其作用是…
JavaScript中,函数是一等(first-class)对象:也就是说,函数是 Object 类型并且可以像其他一等对象(String,Array,Number等)一样使用.它们可以"保存在变量中,作为参数传递给函数,在函数内创建,以及被函数返回". 由于函数是一等对象,我们可以把一个函数作为参数传递给另一个函数,然后在那个函数内执行,甚至也可以被那个函数返回,然后再执行.这就是 JavaScript 中回调函数(callback functions)的本质.在本文的剩余部分,我们…
回调函数 既然函数与任何被赋值给变量的数据是相同的,那么她当然可以像其他数据那样被定义.删除.拷贝,以及当成参数传递给其它函数. 我们定义一个函数,这个函数有两个函数类型的参数,然后他会分别执行这两个参数所执行的函数. function her(){ return a() + b(); } function one(){ ; } fucntion two(){ ; } her(one, two) 实际上,我们也可以直接用匿名函数(即函数表达式)来替代one(),two(),以作为目标函数的参数:…
理解和使用 JavaScript 中的回调函数 标签: 回调函数指针js 2014-11-25 01:20 11506人阅读 评论(4) 收藏 举报  分类: JavaScript(4)    目录(?)[+]  实质: 函数作为参数传入解决回调. 原文:http://javascriptissexy.com/   在JavaScrip中,function是内置的类对象,也就是说它是一种类型的对象,可以和其它String.Array.Number.Object类的对象一样用于内置对象的管理.因为…
1.回调函数定义 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数.回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应. 因此,回调本质上是一种设计模式,并且jQuery(包括其他框架)的设计原则遵循了这个模式. 在JavaScript中,回调函数具体的定义为:函数A作为参数(函数引用)传递到另一个函数B中,并且这个函数B执行函数A.…
1.回调函数定义: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数.回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应. 在JavaScript中,回调函数具体的定义为:函数A作为参数(函数引用)传递到另一个函数B中,并且这个函数B执行函数A.我们就说函数A叫做回调函数.如果没有名称(函数表达式),就叫做匿名回调函数.因此callb…
关于在javascript里面加载其它的js文件的问题可能很多人都遇到过,但很多朋友可能并不知道怎么判断我们要加载的js文件是否加载完成,如果没有加载完成我们就调用文件里面的函数是不会成功的.本文讲解怎么在js中加载其它js文件并在加载完成后执行回调函数. 我们可以动态的创建 <script> 元素,然后通过更改它的 src 属性来加载脚本,但是怎么知道这个脚本文件加载完成了呢,因为我们有些函数需要在脚本加载完成生效后才能开始执行.经过对网络上资源的搜索,我发现在 IE 浏览器中可以使用 &l…