如何使用jQuery获取属性值作为数组

如何使用jQuery获取属性值作为数组,jquery,arrays,attributes,Jquery,Arrays,Attributes,我将数组值保存为元素的属性,但无法将属性值作为数组获取,它是字符串 如何将其作为数组获取 我将为这个问题添加代码 谢谢 代码: 。。。。。 var columns=$('table>thead>tr>*').map(函数(){return{left:$(this.position().left,width:$(this.width()};}); $('table').attr('columnArray',columns.get()); ... ... var columns=$(table.at

我将数组值保存为元素的属性,但无法将属性值作为数组获取,它是字符串

如何将其作为数组获取

我将为这个问题添加代码

谢谢

代码:

。。。。。
var columns=$('table>thead>tr>*').map(函数(){return{left:$(this.position().left,width:$(this.width()};});
$('table').attr('columnArray',columns.get());
...
...
var columns=$(table.attr('columnArray');

现在columns变量具有字符串值,而不是数组。

也许您想改用该函数

$('#el').data('myArray',[1,2,3]);
var myArray = $('#el').data('myArray'); // [1,2,3]

也许您想改用这个函数

$('#el').data('myArray',[1,2,3]);
var myArray = $('#el').data('myArray'); // [1,2,3]

看起来您混淆了HTML标记和Javascript变量

存储阵列后,您可以在Javascript中使用该阵列:

<table>.....</table>

看起来您混淆了HTML标记和Javascript变量

存储阵列后,您可以在Javascript中使用该阵列:

<table>.....</table>

没有
columnArray
属性,如果有,因为它是HTML,它的值将是字符串。。。。。。看起来你混淆了JS变量和HTML标记。没有
columnArray
属性,如果有,因为它是HTML,它的值将是字符串。。。。。。看起来您混淆了JS变量和HTML标记。感谢您的快速回答。所以属性不能像那样保存海量数据,对吗?@Jason-属性的值不能是数组。它只能是一个字符串。“它可以是一个表示数组的字符串,但这会变得非常粗糙。”Jason补充到Peter的回答中。所有属性的设计都考虑了HTML规范的特殊用例,因此它们所能容纳的内容受到限制。HTML5数据属性是“允许”创建自己属性的唯一实例。如果我只是使用属性“asd”,它是无效的,因为它不是由HTML规范指定的。但是,数据函数将允许任何操作,因为它是一个伪解决方案。感谢您的快速回答。所以属性不能像那样保存海量数据,对吗?@Jason-属性的值不能是数组。它只能是一个字符串。“它可以是一个表示数组的字符串,但这会变得非常粗糙。”Jason补充到Peter的回答中。所有属性的设计都考虑了HTML规范的特殊用例,因此它们所能容纳的内容受到限制。HTML5数据属性是“允许”创建自己属性的唯一实例。如果我只是使用属性“asd”,它是无效的,因为它不是由HTML规范指定的。但是,数据函数将允许任何操作,因为它是一个伪解决方案。
array = $("your selector").attr("your attribute").split(",");
// "abc,def,ghi" gets ["abc", "def", "ghi"]