javascript:json数据的页面绑定示例代码


Posted in Javascript onJanuary 26, 2014

web开发中,如果需要将“服务端返回的json对象”绑定到“现有页面上的dom元素”,传统赋值的方式太繁琐,写起来也很累(特别是json对象很大时),于是想出了下面的偷懒方法,不过有二个前提:

1、元素的id要与json对象中的属性命名一致
2、json对象中的属性名,最好不要重复

<!doctype html>
<html>
<head>
<title>json对象遍历演示</title>
<script type="text/javascript">
var obj = {a:'a1',b:'b1',c:{c1:'c1'},d:1,e:true,f:new Date("2012/12/24")};
//showJsonProperty(obj);
/*
function showJsonProperty(jsonObj){
 for(var o in jsonObj){  
  alert("属性名:" + o.toString() + ",值:" + jsonObj[o].toString() + ",type:" + typeof(jsonObj[o]) ); 
  if (typeof(jsonObj[o])=="object")
  {
   showJsonProperty(jsonObj[o]);
  }  
 }
}
*/
function bindJson(jsonObj){
 for(var o in jsonObj){ 
  var domObj = document.getElementById(o.toString());
  if (domObj!=undefined){
   domObj.value=jsonObj[o].toString();
  }  
  if (typeof(jsonObj[o])=="object")
  {
   bindJson(jsonObj[o]);
  }  
 }
}
function bindData(){ 
 bindJson(obj);
}
</script>
<style type="text/css">
 input{width:80px;height:18px;margin:0 10px 0 0;border:1px #999 solid}
 input:hover{border:1px #ff0000 solid}
 input[type=button]{background-color:#efefef;height:22px;}
</style>
</head>
<body>
 <div>
  a:
  <input id="a" />
  b:
  <input id="b" />
  c.c1:
  <input id="c1" />
  d:
  <input id="d" />
  e:
  <input id="e" />
  f:
  <input id="f" />
  <input type="button" value="绑定" id="btnBind" onclick="bindData()"/>
 </div>
</body>
</html>
Javascript 相关文章推荐
ajax不执行success回调而是执行了error回调
Dec 10 Javascript
探讨JQUERY JSON的反序列化类 using问题的解决方法
Dec 19 Javascript
js禁止回车提交表单的示例代码
Dec 23 Javascript
jQuery 取值、赋值的基本方法整理
Mar 31 Javascript
Bootstrop实现多级下拉菜单功能
Nov 24 Javascript
Canvas实现放射线动画效果
Feb 15 Javascript
JavaScript定义函数_动力节点Java学院整理
Jun 27 Javascript
vue父组件向子组件(props)传递数据的方法
Jan 02 Javascript
详解node child_process模块学习笔记
Jan 24 Javascript
vue-cli3.0 特性解读
Apr 22 Javascript
Vue2(三)实现子菜单展开收缩,带动画效果实现方法
Apr 28 Javascript
layui操作列按钮个数和文字颜色的判断实例
Sep 11 Javascript
jQuery focus和blur事件的应用详解
Jan 26 #Javascript
当jQuery1.7遇上focus方法的问题
Jan 26 #Javascript
jQuery中delegate和on的用法与区别详细解析
Jan 26 #Javascript
使用javascript为网页增加夜间模式
Jan 26 #Javascript
jQuery:delegate中select()不起作用的解决方法(实例讲解)
Jan 26 #Javascript
javascript:FF/Chrome与IE动态加载元素的区别说明
Jan 26 #Javascript
js中的时间转换—毫秒转换成日期时间的示例代码
Jan 26 #Javascript
You might like
NO3第三帝国留言簿制作过程
2006/10/09 PHP
php chr() ord()中文截取乱码问题解决方法
2008/09/08 PHP
PHP版网站缓存加快打开速度的方法分享
2012/06/03 PHP
php截取字符串并保留完整xml标签的函数代码
2013/02/06 PHP
css3实现背景模糊的三种方式
2021/03/09 HTML / CSS
二级域名转向类
2006/11/09 Javascript
15个款优秀的 jQuery 图片特效插件推荐
2011/11/21 Javascript
js修改地址栏URL参数解决url参数问题
2012/12/15 Javascript
Js制作简单弹出层DIV在页面居中 中间显示遮罩的具体方法
2013/08/08 Javascript
cookie的复制与使用记住用户名实现代码
2013/11/04 Javascript
基于JavaScript代码实现自动生成表格
2016/06/15 Javascript
AngularJS遍历获取数组元素的方法示例
2017/11/11 Javascript
JavaScript数组排序reverse()和sort()方法详解
2017/12/24 Javascript
详解webpack 打包文件体积过大解决方案(code splitting)
2018/04/10 Javascript
element-ui中select组件绑定值改变,触发change事件方法
2018/08/24 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
JavaScript中reduce()的5个基本用法示例
2020/07/19 Javascript
简单的Python2.7编程初学经验总结
2015/04/01 Python
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
Python的Django框架下管理站点的基本方法
2015/07/17 Python
Python实现全排列的打印
2018/08/18 Python
Python爬虫爬取煎蛋网图片代码实例
2019/12/16 Python
Python3使用腾讯云文字识别(腾讯OCR)提取图片中的文字内容实例详解
2020/02/18 Python
通过实例解析Python RPC实现原理及方法
2020/07/07 Python
纯CSS实现聊天框小尖角、气泡效果
2014/04/04 HTML / CSS
国际鲜花速递专家:Floraqueen
2016/11/24 全球购物
布鲁明戴尔百货店:Bloomingdale’s
2016/12/21 全球购物
宝拉珍选官方旗舰店:2%水杨酸精华液,收缩毛孔粗大和祛痘
2018/07/01 全球购物
一站式跨境收款解决方案:Payoneer(派安盈)
2018/09/06 全球购物
《雪地里的小画家》教学反思
2014/02/22 职场文书
实习生评语
2014/04/26 职场文书
党支部换届选举方案
2014/05/08 职场文书
政府采购方案
2014/06/12 职场文书
税务干部群众路线教育实践活动对照检查材料
2014/09/20 职场文书
保密工作整改报告
2014/11/06 职场文书
运动会观后感
2015/06/09 职场文书