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 事件查询综合 推荐收藏
Mar 10 Javascript
使用jquery的ajax需要注意的地方dataType的设置
Aug 12 Javascript
ECMAScript6快速入手攻略
Jul 18 Javascript
Vue.js组件tree实现省市多级联动
Dec 02 Javascript
jQuery 常见小例汇总
Dec 14 Javascript
详解Angular的8个主要构造块
Jun 20 Javascript
Easyui在treegrid添加控件的实现方法
Jun 23 Javascript
利用C/C++编写node.js原生模块的方法教程
Jul 07 Javascript
jQuery实现常见的隐藏与展示列表效果示例
Jun 04 jQuery
vue项目前端埋点的实现
Mar 06 Javascript
微信小程序通过js实现瀑布流布局详解
Aug 28 Javascript
layui prompt 设置允许空白提交的方法
Sep 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
关于BIG5-HKSCS的解决方法
2007/03/20 PHP
PHP 文件类型判断代码
2009/03/13 PHP
phpphp图片采集后按原路径保存图片示例
2014/02/18 PHP
jQuery+css+html实现页面遮罩弹出框
2013/03/21 Javascript
jQuery图片的展开和收缩实现代码
2013/04/16 Javascript
禁用JavaScript控制台调试的方法
2014/03/07 Javascript
js实现黑色简易的滑动门网页tab选项卡效果
2015/08/31 Javascript
跟我学习javascript的函数和函数表达式
2015/11/16 Javascript
js实现鼠标左右移动,图片也跟着移动效果
2017/01/25 Javascript
jquery.cookie.js的介绍与使用方法
2017/02/09 Javascript
JS+DIV实现的卷帘效果示例
2017/03/22 Javascript
使用重写url机制实现验证码换一张功能
2017/08/01 Javascript
浅谈JsonObject中的key-value数据解析排序问题
2017/12/06 Javascript
总结js中的一些兼容性易错的问题
2017/12/18 Javascript
详解Node.js模板引擎Jade入门
2018/01/19 Javascript
Node.js readline模块与util模块的使用
2018/03/01 Javascript
vue-cli系列之vue-cli-service整体架构浅析
2019/01/14 Javascript
layui form表单提交之后重新加载数据表格的方法
2019/09/11 Javascript
react基本安装与测试示例
2020/04/27 Javascript
Python实现求最大公约数及判断素数的方法
2015/05/26 Python
python检索特定内容的文本文件实例
2018/06/05 Python
使用 Python 写一个简易的抽奖程序
2019/12/08 Python
在python中使用pymysql往mysql数据库中插入(insert)数据实例
2020/03/02 Python
Python 实现将numpy中的nan和inf,nan替换成对应的均值
2020/06/08 Python
Python中Qslider控件实操详解
2021/02/20 Python
Python与C/C++的相互调用案例
2021/03/04 Python
玛蒂尔达简服装:Matilda Jane Clothing
2019/02/13 全球购物
红旗方阵解说词
2014/02/12 职场文书
拒绝黄毒毒宣传标语
2014/06/26 职场文书
大学团日活动新闻稿
2014/09/10 职场文书
幼儿园教师师德承诺书
2015/04/28 职场文书
2015年驾驶员工作总结
2015/04/29 职场文书
逃课检讨书范文
2015/05/06 职场文书
再读《皇帝的新衣》的读后感悟!
2019/08/07 职场文书
docker compose 部署 golang 的 Athens 私有代理问题
2022/04/28 Servers
SpringCloud超详细讲解Feign声明式服务调用
2022/06/21 Java/Android