在JavaScript中以编程方式设置唯一的对象ID
Programmatically setting a unique object ID in JavaScript
我有以下代码
<div id='show_test'></div>
和
var matches = [{
"category_name": "category_1",
"stock_name": "stock_1",
"supplier_stock": "supplier_stock_1"
}, {
"category_name": "category_2",
"stock_name": "stock_2",
"supplier_stock": "supplier_stock_2"
}, {
"category_name": "category_3",
"stock_name": "stock_3",
"supplier_stock": "supplier_stock_3"
}, {
"category_name": "category_4",
"stock_name": "stock_4",
"supplier_stock": "supplier_stock_4"
}];
matches.forEach(function(i, item) {
var arrayDt = [];
arrayDt[i, item] = {
"category_name": this.category_name,
"stock_name": this.stock_name,
"supplier_stock": this.supplier_stock
};
document.getElementById("show_test").innerHTML += "<div><a id='bt_" + item + "'>click</a></div>";
document.getElementById("bt_" + item).onclick = function() {
show_data(i);
}
console.log(document.getElementById("bt_" + item));
console.log(i);
});
function show_data(data) {
alert(JSON.stringify(data));
}
在页面上,我们显示4个链接,当我点击最后一个链接,脚本功能如预期。但不是前三个。为什么前3个链接不起作用?
https://jsfiddle.net/a35wL5ht/replace
document.getElementById("show_test").innerHTML += '<div><a href="#" id="bt_' + item + '">click</a></div>';
var el = document.createElement("div");
var a = document.createElement("a");
a.innerHTML = "click";
a.id = "bt_" + item;
el.appendChild(a);
document.getElementById("show_test").appendChild(el);
相关文章:
- 如何从数组中查找唯一对象
- 基于单个属性从数组中获取唯一对象
- 将唯一对象推送到JavaScript数组
- j根据特定对象属性查询唯一对象
- 按属性创建唯一对象的数组
- 使用带有对象的for循环打印出每个唯一对象的属性
- Three.js r73-将多个对象作为唯一对象来回旋转
- 通过比较和推送唯一对象来创建新的对象数组
- 仅向数组中添加唯一对象
- 如何通过使用Javascript比较两组数组来获得唯一对象
- 在JavaScript中只向数组添加唯一对象
- 使用对象作为键(不是字符串而是唯一对象)的关联映射的javascript方法是什么?
- Firebase push -删除唯一对象并插入新对象(基本上覆盖内容)
- 获取用户输入以创建唯一对象
- 是否有可能在不使用唯一对象属性的情况下区分两个对象?
- Javascript从object中创建唯一对象数组
- 唯一对象字面值键- javascript
- js获取一个唯一对象的数组
- 在javascript数组中查找唯一对象的最快速方法
- 将两个唯一对象推到一个空数组中会产生一个包含两个等效对象的数组