JS-json-1
smarty模板要处理成ajax,所以须要又一次拼接一个html来追加节点。
原先smarty的数组如今须要处理成json数据返回了,服务器端的修改比較小:
header("Content-type : application/json")
echo json_encode($arr);
前台的处理也非常easy
$.ajax({
url : "http://example.com",
type : "GET",
dataType : json,
data : {
//some data
},
success : function(data){
//blog theme
}
});
上面都是废话。说了那么多,可是不保证正确,手头没有文档。所以瞎写了个样子。
以下是主题:
错误1:
有时候json返回的格式是这种
{
"210" : {a,b,c},
"220" : {"a" : 110 , "b" : "lolo"}
}
那假设我使用
for(var i = 0; i < data.length; i++ )
这种方式是会报错的,由于data没有length属性。怎样遍历了,应该使用:
for(var obj in data)
:印象里这是用来遍历对象的属性是否存在的。
须要明白提出的是obj代表的是key,所以你訪问的时候事实上是须要:
data[obj]
但这又明显是数组的訪问方式。
错误2:
var img = data.img;
var imgLen = data.img.length;
假设img属性不存,返回undefined对象。
这里undefined对象并没有length属性。我屏蔽的时候使用
if(!data.img.length)
这样事实上是不能够的,由于他本身就是一个错误。
推荐json的一个插件json-handle
JS-json-1的更多相关文章
- js json简介(json的本质也是字符串)(用于服务器和客户端通信)
js json简介(json的本质也是字符串)(用于服务器和客户端通信) 一.总结 1.json的语法和js的语法非常像,只是json的键和值都是双引号,因为json的本质也是字符串 2.json是一 ...
- JS json对象(Object)和字符串(String)互转方法
[JS json对象(Object)和字符串(String)互转方法] 参考:https://blog.csdn.net/wenqianla2550/article/details/78232706 ...
- js : json和 cookie 的简单操作
使用 cookie,可以记录用户的最近的浏览历史 <!DOCTYPE HTML> <html lang="zh-cn"> <head> < ...
- js json 对象相互转换
字符串转对象(strJSON代表json字符串) var obj = eval(strJSON); var obj = strJSON.parseJSON(); var obj = JSO ...
- js json 与字符串 转换过程由于书写不统一规范引发的一个问题
对于两个字符串: 字符串1:{title:{},tooltip:{trigger:"axis"},legend:{data:["新关注人数"]},calcula ...
- JS~json日期格式化
起因 对于从C#返回的日期字段,当进行JSON序列化后,在前台JS里显示的并不是真正的日期,这让我们感觉很不爽,我们不可能为了这东西,把所有日期字段都变成string吧,所以,找了一个JS的扩展方法, ...
- js json和对象互相转换
http://www.jb51.net/article/44562.htm obj = JSON.parse(string) | obj = jQuery.parseJSON(str) 将JSON字符 ...
- Js Json 互转
推荐: //js对象转换为 JSON 文本 var text = '[{"id":1,"name":"C","size" ...
- js json string 互转
字符串转对象(strJSON代表json字符串) var obj = eval(strJSON); var obj = strJSON.parseJSON(); var obj = JSON.pars ...
- json2.js JSON解析程序
源码: /* http://www.JSON.org/json2.js 2010-03-20 Public Domain. NO WARRANTY EXPRESSED OR IMPLIED. USE ...
随机推荐
- 神盾局特工第四季/全集Agents Of SHIELD迅雷下载
英文全名Agents Of SHIELD,第4季(2016)ABC. 本季看点:<神盾局特工>(Agents Of SHIELD)第三季季终集里,我们终于知道谁死了……但死的不是一个,而是 ...
- 【 D3.js 入门系列 --- 2 】 怎样使用数据和选择元素
本人的个人博客首页为: http://www.ourd3js.com/ ,csdn博客首页为:http://blog.csdn.net/lzhlzz/. 转载请注明出处,谢谢. 接着上一讲的内容,这 ...
- nginx 代理ssh
events { worker_connections 1024; } stream { #stream模块,就跟http模块一样 upstream ssh { server 127.0.0.1:22 ...
- C#程序集Assembly学习随笔(增补版,附图)_AX
上篇我讲了下我对Assembly的初步认知.现在来说说怎么使用已有的Assembly.比如说我在做一个解决方案时,发现你做的解决方案的某个项目中的类的方法(功能)我正好可以用到,哈,那我就不用写类了, ...
- 单元测试利器 JUnit 4
引言 毋庸置疑,程序员要对自己编写的代码负责,您不仅要保证它能通过编译,正常地运行,而且要满足需求和设计预期的效果.单元测试正是验证代码行为是否满足预期的有效手段之一.但不可否认,做测试是件很枯燥无趣 ...
- [转]mysql 一个表两列的值交换
FROM : http://bbs.csdn.net/topics/380025779 mysql> select * from test1 +------+-------+-------+ | ...
- vRealize Automation的REST API Reference在哪里可以看到?
两个地方: 1. VMware官网可以查看. http://pubs.vmware.com/vrealize-automation-71/topic/com.vmware.vra.restapi.do ...
- 【ElasticSearch】ElasticSearch-SQL插件
ElasticSearch-SQL插件 image2017-10-27_11-10-53.png (1067×738) elastic SQL_百度搜索 Druid SQL 解析器的解析过程 - be ...
- IIS配置中出现HRESULT:0X80070020错误
Win7 IIS启动失败.手工启动它,提示:“另一个程序正在使用此文件,进程无法访问!” 此时是因为另一个程序占用了IIS的端口号,IIS一般用的是80端口,是谁占用了这个端口呢? 方法如下:开始菜单 ...
- nodejs pipe实现大文件拷贝
原文: http://nqdeng.github.io/7-days-nodejs/ --------------------------------------------------------- ...