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 相关文章推荐
用JavaScript修改CSS属性的代码
May 06 Javascript
table insertRow、deleteRow定义和用法总结
May 14 Javascript
js style.display=block显示布局错乱问题的解决方法
Sep 21 Javascript
探讨AngularJs中ui.route的简单应用
Nov 16 Javascript
vue.js学习笔记:如何加载本地json文件
Jan 17 Javascript
jQuery模拟实现天猫购物车动画效果实例代码
May 25 jQuery
利用vue+elementUI实现部分引入组件的方法详解
Nov 22 Javascript
vue中引用阿里字体图标的方法
Feb 10 Javascript
Fundebug支持监控微信小程序HTTP请求错误的方法
Feb 21 Javascript
Angular CLI 使用教程指南参考小结
Apr 10 Javascript
浅谈 Webpack 如何处理图片(开发、打包、优化)
May 15 Javascript
如何用原生js写一个弹窗消息提醒插件
May 24 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
DC漫画《蝙蝠侠和猫女》图透 猫女怀孕老爷当爹
2020/04/09 欧美动漫
将RTF格式的文件转成HTML并在网页中显示的代码
2006/10/09 PHP
php过滤敏感词的示例
2014/03/31 PHP
php猜单词游戏
2015/09/29 PHP
PHP数据对象PDO操作技巧小结
2016/09/27 PHP
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
PHP判断是否是微信打开,浏览器打开的方法
2018/03/14 PHP
jquery获得页面元素的坐标值实现思路及代码
2013/04/15 Javascript
jquery easyui滚动条部分设置介绍
2013/09/12 Javascript
AngularJS中取消对HTML片段转义的方法例子
2015/01/04 Javascript
浅谈javascript中onbeforeunload与onunload事件
2015/12/10 Javascript
AngularJS入门教程之过滤器详解
2016/08/19 Javascript
使用node.js中的Buffer类处理二进制数据的方法
2016/11/26 Javascript
react-router中的属性详解
2017/06/01 Javascript
taro开发微信小程序的实践
2019/05/21 Javascript
vue实现购物车选择功能
2020/01/10 Javascript
Python 递归函数详解及实例
2016/12/27 Python
python生成密码字典的方法
2018/07/06 Python
pytorch 数据集图片显示方法
2018/07/26 Python
python scrapy爬虫代码及填坑
2019/08/12 Python
Python socket处理client连接过程解析
2020/03/18 Python
Python魔术方法专题
2020/06/19 Python
pytorch SENet实现案例
2020/06/24 Python
Python利用Pillow(PIL)库实现验证码图片的全过程
2020/10/04 Python
Python 实现RSA加解密文本文件
2020/12/30 Python
css3的transition效果和transfor效果示例介绍
2013/10/30 HTML / CSS
使用CSS3实现多列布局与多背景的技巧
2016/02/29 HTML / CSS
美国电子产品购物网站:BuyDig.com
2020/06/17 全球购物
垃圾回收的优点和原理。并考虑2种回收机制
2016/10/16 面试题
成功经营餐厅的创业计划书范文
2013/12/26 职场文书
创业计划实施的7大步骤
2014/02/05 职场文书
岗位说明书范文
2014/05/07 职场文书
单位授权委托书范文
2014/08/02 职场文书
代理词怎么写
2015/05/25 职场文书
python运算符之与用户交互
2022/04/13 Python
mysql 体系结构和存储引擎介绍
2022/05/06 MySQL