javascript - 如何将项目添加到 Javascript 数据数组/对象

标签 javascript

我不是 JavaScript 专家!

我有一个简单的数组/对象,需要将其添加到 JavaScript 表中。 像这样的事情:

var columns = {
                "0": { "styles": "width:22%;" },
                "1": { "styles": "width:13%;" },
                "2": { "styles": "width:13%;" },
                "3": { "styles": "width:13%;" },
                "4": { "styles": "width:13%;" },
                "5": { "styles": "width:13%;" },
                "6": { "styles": "width:13%;" }
            };

然而,“列”变量必须根据我有多少条记录而改变...所以 0 将始终相同 (22%),但 1-5 取决于用户定义的列数,6 是“总计”栏。 1-6的宽度也会改变。

我知道如何获取列数,但只是不确定如何创建列列表并生成类似上面“列”声明的内容。

最佳答案

你可以尝试这样的事情:

var table = document.getElementById('myTable'), // table to perform search on
    row = table.getElementsByTagName('tr')[0],
    columnsCount = row.getElementsByTagName('td').length,
    columns = {0: { styles: 'width: 22%' }};

for (var i = 1; i < columnsCount; i++) {
  columns[i] = {styles: 'width: ' + Math.floor((100-22) / (columnsCount - 1)) + '%'}

  row.getElementsByTagName('td')[i].style = columns[i].styles;
}

console.log(columns);

这是一个工作示例:http://jqversion.com/#!/afxvKvE

关于javascript - 如何将项目添加到 Javascript 数据数组/对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24820592/

相关文章:

javascript - 有条件地将数据从封闭 View 传递到部分 View

javascript - 正则表达式匹配双引号或单引号中的字符串并后跟空格

javascript - 将 Prop 传递给包装在 withRouter() 函数中的 react 组件

javascript - Angular 2 : Bind view with callback variable

javascript - 如何从动态Web项目Eclipse中获取jquery数据到mysql中

javascript - jQuery if() 问题

javascript - CSS 列表样式类型使用属性值

javascript - 从 React 组件转换为使用 one hooks

javascript - 动态生成带有变量名和字符串的数组

JavaScript 正则表达式——匹配一系列十六进制数