javascript - 为每个元素的文本节点创建一个变量

标签 javascript jquery html

我正在尝试为集合中的每个元素创建一个变量。我有一个像这样的 HTML 结构:

<div id="notes">
    <p>Example Text 1</p>
    <p>Example Text 2</p>
    <p>Example Text 3</p>
</div> 

我想将每个元素的文本存储在一个单独的变量中。在这种情况下,元素是动态生成的,因此有时有 2 个元素,有时有更多。

到目前为止我尝试了什么:

var $counter= 0;
var variableNote = {};
$('#notes p').each(function(){
   $counter += 1;
   variableNote["newNote"+$counter] = $("#notes p").text();
   console.log(newNote1);
});

我做错了什么?

最佳答案

对象属性不是变量。要访问它们,您需要引用该对象。

此外,您没有在循环中使用迭代的当前元素。

var variableNote = {};

$('#notes p').each(function(index) {
    variableNote["newNote" + (index+1)] = $(this).text();
});

console.log(variableNote["newNote1"]);

关于javascript - 为每个元素的文本节点创建一个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51109415/

相关文章:

javascript - 优化 HTML5 canvas 中的像素设置

javascript - 处理灵活的参数量

javascript - Jquery/JavaScript 字符串匹配

javascript - 为什么 2 参数的绘制图像比 9 参数更快?

javascript - IE8 iframe DesignMode 失去选择

javascript - 可以使用 AJAX 链接导航吗?

java - 如何通过JSON获取特定格式的数据

javascript - 多个元素,同一个类,获取一个元素的值 - jquery

php - HTML5 Canvas : How to save and reopen image from server

javascript - 如何更改工具提示的位置?