jQuery.ajax不能实现return值调用问题

我们使用jQuery.ajax函数是不能实现success方法return值的,而有时候我们需要对成功返回的数据进行处理,一般来说,与服务器交互后会返回很多的数据,而有些数据需要进行特别处理,这时需要实现success方法return,但jQuery.ajax中是无法实现的,传统的jQuery.ajax使用如下:

  1. jQuery.ajax({
  2. type: "POST",
  3. url: "some.php",
  4. data: "name=John&location=Boston",
  5. success: function(msg){
  6. return msg;
  7. }
  8. });

如上:return msg;操作是无效的。

我们与服务器交互后,返回数据在msg中,但我们需要实现一个return,那么如何解决这个问题。

思路,通过传入一个函数,jQuery.ajax触发success事件调用这个函数,并把返回的数据msg传递给传入的函数,实现函数对数据的处理。

为了解决这个问题,写了一个实例,分别有三个文件,一个html文件、js文件和PHP文件。

实例分析:
一,JS部分

  1. var biuuu = {};
  2. biuuu._ajax = function(url,data,datatype,_success_func,_error_func){
  3. jQuery.ajax({
  4. type:"post",
  5. url:url,
  6. data:data,
  7. dataType:datatype,
  8. success:function(info){
  9. _success_func(info);
  10. },
  11. error:function(){
  12. _error_func();
  13. }
  14. });
  15. }

传入四个参数,分别是
url:是处理ajax提交的PHP文件,如下:biuuu.php
data:传入的post数据,如下:do=test
datatype:表示数据类型,如下:json
_success_func:处理成功操作的函数名,如下:biuuu.succfunction
_error_func:处理失败操作的函数名,如下:biuuu.failfunction

二,HTML部分(触发事件)

  1. <script type="text/javascript" src="http://code.jquery.com/jquery.js"></script>
  2. <script type="text/javascript" src="biuuu.js"></script>
  3. <script type="text/javascript">
  4. <!--
  5. jQuery(document).ready(function(){
  6. jQuery("#open").click(function(){
  7. biuuu._ajax("biuuu.php",'do=test','json',biuuu.succfunction,biuuu.failfunction);
  8. });
  9. });
  10. biuuu.succfunction = function(info){
  11. alert(info.message);
  12. }
  13. biuuu.failfunction = function(){
  14. alert('fail');
  15. }
  16. //-->
  17. </script>
  18. <a href="#" id="open">test</a>

当点击test后,触发ajax提交,实功调用biuuu.succfunction函数,失败调用biuuu.failfunction函数

三,PHP部分

  1. <?php
  2. $info = array ('message' => 'biuuu is success','bool' => TRUE );
  3. print_r ( json_encode ( $info ) );
  4. exit ();
  5. ?>

返回一个json数据

解决方法其实很简单,用传入函数名的方法来解决jQuery.ajax不能实现return值调用问题。

点我下载 如果解决jQuery.ajax不能实现return值调用问题 实例

转载于:https://www.cnblogs.com/satng/archive/2009/07/27/2138921.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/379613.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux内核设计与实现---页高速缓存和页回写

页高速缓存和页回写1 页高速缓存2 基树3 缓冲区高速缓存4 pdflush后台例程膝上型电脑模式bdflush和kupdated避免拥塞的方法&#xff1a;使用多线程页高速缓存&#xff08;cache&#xff09;是Linux内核实现的一种主要磁盘缓存&#xff0c;通过把磁盘中的数据缓存到物理内存中&a…

EL技术

1&#xff0e;EL 表达式概述 EL&#xff08;Express Lanuage&#xff09;表达式可以嵌入在jsp页面内部&#xff0c;减少jsp脚本的编写&#xff0c;EL 出现的目的是要替代jsp页面中脚本的编写。 2&#xff0e;EL从域中取出数据(EL最重要的作用) jsp脚本&#xff1a;<%requ…

math.trunc_JavaScript中带有示例的Math.trunc()方法

math.truncJavaScript | Math.trunc()方法 (JavaScript | Math.trunc() Method) Math.trunc() is a function in math library of JavaScript that is used to extract the integer part of the given floating-point number. It removes the decimal and all the digits after…

.NET程序员的书单

zz from sjtu bbs: http://bbs.sjtu.edu.cn/bbscon?boardDotNET&fileM.1126188158.A 发信人: luckySeven(lucky为这位mm默哀), 信区: DotNET 标 题: .NET程序员的书单 发信站: 饮水思源 (2005年09月08日22:02:45 星期四), 转信 发信人: AtomAndBit (原子与比特), 信区: D…

SVN+AnkhSVN端配置

对于ankhSVN我想很多人不陌生&#xff0c;因为经常使用&#xff0c;但是我还是发现很多人并不怎么会配置&#xff0c;或者完全不知道其需要配置&#xff0c;如果不配置的话&#xff0c;当两个人同时需要修改某个文件的时候就容易中弹了。SVN默认是不支持“锁定-编辑-解锁”的&a…

Linux内核设计与实现---模块

模块1 构建模块放在内核源代码树中放在内核代码外2 安装模块3 产生模块依赖性4 载入模块5 管理配置选项6 模块参数7 导出符号表Linux内核是模块化组成的&#xff0c;它允许内核在运行时动态地向其中插入或从中删除代码。 与开发的内核核心子系统不同&#xff0c;模块开发更接近…

JSTL技术

1&#xff0e;JSTL概述 JSTL&#xff08;JSP Standard Tag Library)&#xff0c;JSP标准标签库&#xff0c;可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。jstl出现的目的同el一样也是要代替jsp页面中的脚本代码。JSTL标准标准标签库有5个子库&#xff0c;但随着发展…

asinh函数_JavaScript中带有示例的Math.asinh()方法

asinh函数JavaScript | Math.asinh()方法 (JavaScript | Math.asinh() Method) Math.asinh() is a function in math library of JavaScript that is used to find the value of hyperbolic arc-sine of a number. Math.asinh()是JavaScript数学库中的函数&#xff0c;用于查找…

使用PHP创建一个REST API(Create a REST API with PHP)

译者前言&#xff1a; 首先这是一篇国外的英文文章&#xff0c;非常系统、详尽的介绍了如何使用PHP创建REST API&#xff0c;国内这方面的资料非常非常的有限&#xff0c;而且基本没有可操作性。这篇文章写的非常好&#xff0c;只要对PHP稍有了解的程序员&#xff0c;看完本文基…

old-

大数问题:求用一段C或C程序写求 f(x)100! 的完整程序大数问题&#xff0c; 我用数组作的&#xff0c;输出格式应该是是222,222,222 #include "stdafx.h" #include<stdio.h> #include<stdlib.h> int a[1000]{0}; in…

javaEE的开发模式

1&#xff0e;什么是模式 模式在开发过程中总结出的“套路”&#xff0c;总结出的一套约定俗成的设计模式 2&#xff0e;javaEE经历的模式 model1模式&#xff1a; 技术组成&#xff1a;jspjavaBean model1的弊端&#xff1a;随着业务复杂性 导致jsp页面比较混乱 model2模式…

Linux内核设计与实现---kobject sysfs

kobject sysfs1 kobject2 ktype3 kset4 subsystem5 别混淆了这些结构体6 管理和操作kobject7 引用计数kref8 sysfssysfs中添加和删除kobject向sysfs添加文件9 内核事件层2.6内核增加了一个引人注目的新特性—同一设备模型。设备模型提供了独立的机制专门表示设备&#xff0c;并…

开发Windows Mobile今日插件 -- 内存电量,桌面便笺,桌面记单词

本篇文章讲解的是开发 Windows Mobile 上的今日插件。关于是今日插件&#xff0c;在 PPC 或者 SP SDK 的帮助文档中有相关的章节介绍&#xff0c;在网络上也有一些帖子和资源讲解。在这里简要回顾一下。今日插件就是在windows mobile的桌面上显示的条目&#xff0c;例如系统提供…

c语言中将函数指针作为形参_在C中将有效指针作为NULL指针

c语言中将函数指针作为形参Prerequisite: An Example of Null pointer in C 先决条件&#xff1a; C中的空指针示例 Any pointer that contains a valid memory address can be made as a NULL pointer by assigning 0. 通过分配0&#xff0c;可以将包含有效内存地址的任何指…

[转]一个清华计算机博士生的退学申请

偶然间在网上看到这篇帖子&#xff0c;回想起自己的求学经历&#xff0c;思索良久。。。 本想找到原帖及作者&#xff0c;但是几经搜索&#xff0c;发现原帖出自科学网&#xff0c;已被删除。对此&#xff0c;我还能说啥&#xff1f;&#xff01; http://www.sciencenet.cn/m/u…

算法---递归

递归结题三部曲 何为递归&#xff1f;程序反复调用自身即是递归。 我自己在刚开始解决递归问题的时候&#xff0c;总是会去纠结这一层函数做了什么&#xff0c;它调用自身后的下一层函数又做了什么…然后就会觉得实现一个递归解法十分复杂&#xff0c;根本就无从下手。 相信…

给定条件找最小值c语言程序_根据给定条件最小化n的最小步骤

给定条件找最小值c语言程序Problem statement: 问题陈述&#xff1a; Given a number n, count minimum steps to minimize it to 1 performing the following operations: 给定数字n &#xff0c;执行以下操作&#xff0c;计算最少的步骤以将其最小化为1&#xff1a; Operat…

提高C#编程水平不可不读的50个要诀

提高C#编程水平的50个要点 1.总是用属性 (Property) 来代替可访问的数据成员 2.在 readonly 和 const 之间&#xff0c;优先使用 readonly 3.在 as 和 强制类型转换之间&#xff0c;优先使用 as 操作符 4.使用条件属性 (Conditional Attributes) 来代替条件编译语句 #if 5.总是…

那个年代的苏联歌曲

小时候&#xff0c;不时听父亲提起电影《这里的黎明静悄悄》&#xff0c;怎么也想不到如此美丽的名字为什么要和战争联系起来。后来在大学看了这部电影之后&#xff0c;开始认为这名字是合适的&#xff0c;因为电影讲的是女性——战场中的女性&#xff0c;各自都怀揣着爱情去保…

linux系统编程---进程总结

进程控制总结1 进程创建的三种方式forkvfrokclone2 进程终止进程正常退出returnexit_exit进程异常退出进程收到某个信号&#xff0c;而该信号使进程终止abort3 进程等待进程等待的方法waitwaitpid4 进程替换替换原理替换函数制作一个简单的shell1 进程创建的三种方式 参考文章…