javascript - 为每个元素的文本节点创建一个变量
问题描述
我正在尝试为集合中的每个元素创建一个变量。我有一个这样的 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"]);
推荐阅读
- xamarin.forms - 如何在 Xamarin Forms(XAML) 上添加 android:id 等 android 属性?
- typescript - 如何用简单的英文阅读`地图:(f: (a: A) => B) => (ma: M ) => M `
- c - C中的可变维数组
- java - 当我们尝试在 recylerview 中设置适配器时从 recylerview 收到错误
- ruby-on-rails - ActionController::ParameterMissing(参数丢失或值为空)
- javascript - 如何解决 axios 中请求的资源上没有“Access-Control-Allow-Origin”标头?
- android - SwipeRefresh + 右/左 ViewPager 滑动
- php - 我只想使用 laravel 从我的数据库中查看我的记录
- nativescript - 在 nativescript webview 上自动播放音频
- java - 具有两个类层次结构的通用类