欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Ajax异步请求JSon数据(图文详解)

程序员文章站 2023-11-09 19:22:22
上一篇讲了ajax请求数据text类型,text和html都是处理比较简答的数据,而在编程过程中使用ajax调用数据的时候,难免要进行逻辑的处理,接受的数据也变的复杂比如数...

上一篇讲了ajax请求数据text类型,text和html都是处理比较简答的数据,而在编程过程中使用ajax调用数据的时候,难免要进行逻辑的处理,接受的数据也变的复杂比如数组类型的数据,这时候就需要使用json数据类型进行处理,今天就说说,json数据请求过程中的一些细节:

友情提醒本文所需工具和原料如下:

wamp或lamp环境、jquery.js、编辑器

具体方法/步骤请看下面:

1.创建基本的文件结构json_ajax.html和json_ajax.php,下载jquery.js,如图:

Ajax异步请求JSon数据(图文详解)

2.如图分别编写json_ajax.html和json_ajax.php文件的编码:

Ajax异步请求JSon数据(图文详解)Ajax异步请求JSon数据(图文详解)

3.分别在w(l)amp环境下运行json_ajax.html和json_ajax.php,运行结果如图:

这个运行的结果应该是正常的,理解上没有困难的,继续向下看,如果这里理解困惑,就没必要在继续阅读的必要了。

Ajax异步请求JSon数据(图文详解)Ajax异步请求JSon数据(图文详解)

4.经过源码和运行结果的分析,知道了在json_ajax.html中设置了按钮的点击事件,点击按钮,正常的运行结果如下图;

若没有正常的显示,可参考我的《jquery的ajax之调试》

Ajax异步请求JSon数据(图文详解)

5.第4步结果分析:

console.log(data),直接将json_ajax.php返回的结果返回,就是json字符串;

console.log(eval('['+data+']')),这样做的目的是将json_ajax.php返回的json字符串转换成对象。

‘对象'在php里面是区别于过程的,但是在js中,所有的数据都是对象,或许现在有点明白了,为什么要将json字符串转换成对象了;在js中处理对象更方便,就像在php中处理数据的时候,首先想到的是数组(array)一样。

6.细节总结:

     1.php返回的必须是json,即是需要将数据用json_encode()处理;

     2.ajax接受数据之后,需要eval()处理,里面'['+data+']'可以用'('+data+')';

     3.console.log()可以使用alert()代替;

     4.在此主要是过程思路,一旦接收到data数据,就可以按需求进行逻辑处理了。

以上通过图文并茂的方式给大家展示了ajax异步请求json数据,希望大家喜欢。