我真的很想使用
JSON来处理我的Ajax请求和响应周期.我之前只使用了作为POST数据传递的普通旧参数,并且我在响应中呈现了直接HTML,然后将其放入DOM中.当我查看各种示例并阅读各种教程时,简单地从混合了HTML的JSON对象构建字符串似乎是一种相当普遍的做法,该字符串已被硬编码到字符串中,然后将字符串作为innerHTML分配给某个元素.
一个常见的例子看起来像这样:
var jo = eval(req.responseText); var strTxt = '<span>' + jo.f_name + ' ' + jo.l_name + '</span><br/>' + 'Your Age Is: ' + jo.age + '<br/>'; $('myDiv').innerHTML = strTxt;
是否有一种更优雅(或更正确)的方式来处理JSON响应,这样我就不会在javascript中对HTML进行硬编码?或者这是人们如何做到的?
附:赞赏教程或其他来源的链接.
解决方法
我避免在JavaScript字符串中编写大量HTML.我更喜欢将结构与数据操作分开.更好的选择是将该代码放在页面中,根据ID加载值,并在必要时显示/隐藏它:
<div id="codeBlock" style="visible=false;"> <span id="val1"></span> <br/> <span id="val2"></span> <br/> </div> ............ <script> var jo = eval(req.responseText); $('val1').innerHTML = jo.f_name + ' ' + jo.l_name; $('val2').innerHTML = 'Your Age Is: ' + jo.age; $('codeBlock').show(); </script>
这可能不是你想要做的,但你明白了.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。