Ajax的注意事项
case 1:
无论是使用原生的JavaScript,还是JQuery,通过Ajax请求后端程序数据,返回的数据默认是字符串,字符串,字符串,重要的事情说三遍!!!
case 2:
不要尝试直接将返回的值和一个数字进行比较,也不要直接作为if或者while的条件,因为字符串作为条件始终为真,即使是“0”,是会认为是true;其次,数字0和字符串“0”始终不相等,要进行比较的话,应该先使用parseInt(res)将string的res转换为int。
case 3:
后端程序中,要返回给ajax的数据应该使用echo,print,print_r,var_dump等将数据输出,是将数据输出,输出,不要使用return 返回数据,重要的事情说三遍!!!如果是数组或者对象,则先将对象或者数组序列化为json格式的字符串,再echo。。后端程序中输出什么数据,ajax获得的就是什么数据,如果使用return,那么ajax什么都获取不,即使打印变量,也是一个undefined。
以下的做法是错误的:假设ajax请求index.php,需要获得一个flag标志,但是index.php是return一个flag,于是ajax获得的是一个空字符串,而不是flag!!!!!
<?php
$flag = "true";
return $flag;
?>
case 4:
后端程序也许只输出了一个字符,但是,ajax收到的数据可不止一个字符,还包含很多空格,所以要使用res.trim()来清楚空格。
case 5:
在使用ajax来请求时,XMLHttpRequest的open(method,url,async)方法中:
如果选择异步方式即Async为true(推荐的),那么XMLHttpRequest对象的readyState每次发生变化,都会触发onreadystatechange事件,可以通过readyState和status的值来判断进行到哪一阶段,结果如何。
如果选择同步方式即Async为false(不推荐),那么就不用为onreadystatechange事件绑定什么处理函数,因为只有当成功或者获得结果的时候才会进行下一步操作,此时readyState必定为4。
Ajax的注意事项的更多相关文章
- jquery的ajax及注意事项
1.引jquery包(jquery-1.8.0.min.js) <script type="text/javascript"> $(function () { //根据 ...
- FormData的Ajax提交注意事项
Ajax提交表单一般有下面两种形式: var form_data = $('#form').serialize(); var form_data = new FormData($('#form')[0 ...
- jquery ajax api
执行一个异步的HTTP(Ajax)的请求. version added: 1.5jQuery.ajax( url, [ settings ] ) url一个用来包含发送请求的URL字符串. setti ...
- JQuery中Ajax详细参数使用案例
JQuery中Ajax详细参数使用案例 参考文档:http://www.jb51.net/shouce/jquery1.82/ 参考文档:http://jquery.cuishifeng.cn/jQu ...
- AJAX的学习与使用>前端技术系列
目录 AJAX的学习与使用 什么是AJAX 为什么要使用AJAX AJAX接收服务器响应数据的3种格式 文本格式(重要) JSON格式(重要) 服务器端响应实体类JSON格式的3种方式 修改实体类的t ...
- springMVC中ajax的运用于注意事项
ajax的运用: 注意事项: dataType:"json"在ajax中可写可不写(ajax能够自动识别返回值类型),写了更加规范,可以在ajax识别错误返回值类型的时候,指定返回 ...
- java 中使用ajax调用后台方法注意事项
java 中使用ajax调用后台方法注意事项,后台方法一定要加@ResponseBody jQuery.validator.addMethod("checkRuleName",fu ...
- Hbuilder用ajax连接阿里服务器上的servlet以及注意事项
Hbuiler连接服务器上的servlet的步骤与连接本地项目中的servlet基本一致,详细内容参考上一片博客:https://www.cnblogs.com/ljysy/p/10294640.ht ...
- 【ajax 提交表单】多种方式的注意事项
在业务中,可能因为表单内容过于庞大,字段过于繁杂,如果人为去拼接的话 ,需要耗费大量的时间和精力,与此同时,代码看上去也是冗余不堪. 所以,提交表单的时候如果能整个表单数据整体提交,那是非常开心的事情 ...
随机推荐
- [CQOI2014]排序机械臂
嘟嘟嘟 最近复习复习平衡树,然后又体会到了那种感觉:"写代码半小时,debug一下午". 这题其实就是让你搞一个数据结构,支持一下操作: 1.区间翻转. 2.查询区间最小值所在位置 ...
- log4j2的环境变量使用
官方文档 http://logging.apache.org/log4j/2.x/manual/lookups.html#EnvironmentLookup
- 自己编写的Shell
shell文件 #!/bin/sh ## param 1: log string #下面的$1指的是调用这个function时传过来的第一个参数,依次类推 $2第二个 $3第三个funcLog() { ...
- 我是怎样和Linux系统结缘并通过红帽RHCE认证的
我高考完当时就是选择的计算机科学与技术专业,上大学以后联想到的和计算机相关的就只有写代码,开发,网站,网页设计,就没有其他的了,当时学习写代码也都是在Windows上,什么C#.C++之类的?大约在大 ...
- ASP.NET 加密解密
1.MD5 2.DES 一 MD5 介绍:MD5是不可逆解密方式,比如对密码的加密,为了保密,让密码不能解密 public static string MD5Encrypt(string str) { ...
- Linux 读取 (*.xls)文件读取,使用libxls库
首先下载libxls,项目地址:http://sourceforge.net/projects/libxls/,备用下载:libxls-1.4.0.zip 解压后使用: ./configure --p ...
- centos 6.X下建立arduino开发环境
一.安装arduino IDE 1.下载linux下arduino IDE安装包,从网址:http://arduino.cc/en/Main/Software下载,如果这个网址打不开,可从网盘下载:h ...
- 覆写equals方法为什么需要覆写hashCode方法
覆写equals方法必须覆写hashCode方法,是JDK API上反复说明的,不过为什么要这样做呢?这两个方法之间有什么关系呢? void test() { // Person类的实例作为Map的k ...
- WPF中TreeView.BringIntoView方法的替代方案
原文:WPF中TreeView.BringIntoView方法的替代方案 WPF中TreeView.BringIntoView方法的替代方案 周银辉 WPF中TreeView.BringIntoVie ...
- 锁、C#中Monitor和Lock以及区别
1.Monitor.Enter(object)方法是获取锁,Monitor.Exit(object)方法是释放锁,这就是Monitor最常用的两个方法,当然在使用过程中为了避免获取锁之后因为异常,致锁 ...