栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

从JavaScript对象创建HTML表

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

从JavaScript对象创建HTML表

说明

您想要的是用Javascript填充HTML中的表(或另一个DOMElement),一旦加载页面并接收到JSON对象,该表就会动态执行。

您要遍历对象。最好的方法是使用

for
循环,并确保 循环变量 在对象(所有属性)的长度内保持有效。

获取JSON对象长度的最好方法是通过

myJSONObject.length
:选择 myJSONObject 的键并返回其计数。

您可以通过以下方式在

for
循环中访问存储在JSON对象中的值(假设定义的循环变量名为
i
):
myJSONObject[i].theAttributeIWantToGet


价格格式明细

现在,这些价格需要采用正确的格式,不是吗?因此,我们将检查其中的任何

value
属性是否 少于2个
字符
.
。如果是这样,我们再加上一个小数
0
。我们还要
$
在写入格式化值之前添加一个。以下是其工作方式的细分:

  • obj[i].value.toString().substring(startIndex, length)

    • 我们要检查
      .
      符号后的长度,因此我们的startIndex将是该点在字符串中的位置。
    • obj[i].value.toString().substring(obj[i].value.toString().indexOf('.'),length)
    • 现在,我们需要设置长度。我们想要找到点后所有内容的长度,因此为了安全起见,我们将使用整个字符串的长度。
    • 最后结果:

      obj[i].value.toString().substring(obj[i].value.toString().indexOf('.'), obj[i].value.toString().length) < 2

    • 这将返回true或false。如果是真的:圆点后面的数字少于2位!

    • 我们添加

      if
      语句和最后一个零:

    • if (obj[i].value.toString().substring(obj[i].value.toString().indexOf('.'), obj[i].value.toString().length) < 2) obj[i].value += "0";


另外: 为什么我使用

innerHTML
而不是
appendChild()


JSFiddle

HTML

<table>    <tbody id="tbody"></tbody></table>

JSON格式

[{    "key": "apple",    "value": 1.90}, {    "key": "berry",    "value": 1.7}, {    "key": "banana",    "value": 1.5}, {    "key": "cherry",    "value": 1.2}]

Javascript

注意: JSON对象将

obj
在此实例中命名。

var tbody = document.getElementById('tbody');for (var i = 0; i < obj.length; i++) {    var tr = "<tr>";        if (obj[i].value.toString().substring(obj[i].value.toString().indexOf('.'), obj[i].value.toString().length) < 2)         obj[i].value += "0";        tr += "<td>" + obj[i].key + "</td>" + "<td>$" + obj[i].value.toString() + "</td></tr>";        tbody.innerHTML += tr;}

JSFiddle



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/418363.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号