设置表格数据的点击功能<td>与参数
Setting on click function in tabla data <td> with parameters
我有这样的代码:
for (var i = 0; i < ArregloNombres.length; i++) {
var tr = document.createElement("tr");
for (var j = 0; j < ArregloNombres[i].length; j++) {
var td = document.createElement("td");
var text = document.createTextNode(ArregloNombres[i][j]);
td.appendChild(text);
tr.appendChild(td);
}
var Link = document.createElement("a");
var textLink = document.createTextNode("Eliminar");
Link.appendChild(textLink);
Link.onclick = function() {
eliminarImpuesto(i)
};
var tdLink = document.createElement("td");
tdLink.appendChild(Link);
tr.appendChild(tdLink);
tabla.appendChild(tr);
}
,其中eliminarImpuesto(i)
就是alert(i)
。问题是,对于我创建的每个链接,传递的是相同的参数,它是数组内的值的数量。例如,我在数组中有两个元素,然后表中的每个链接调用函数eliminarImpuesto(2)
,而不是发送适当的值。请帮助。
您的变量"i"似乎是全局的。请查看下面的链接:http://www.w3schools.com/js/js_function_closures.asp
如果你给你的元素赋了一个属性,然后把它取回来,你可能会解决它。
for(var i = 0; i<ArregloNombres.length ; i++){
var tr = document.createElement("tr");
for(var j = 0; j<ArregloNombres[i].length; j++) {
var td = document.createElement("td");
var text = document.createTextNode(ArregloNombres[i][j]);
td.appendChild(text);
tr.appendChild(td);
}
var Link = document.createElement("a");
var textLink = document.createTextNode("Eliminar");
//HERE: passing the attribute to your element...
textLink.setAttribute('data-i',i);
Link.appendChild(textLink);
Link.onclick =function(){eliminarImpuesto(textLink)};
var tdLink = document.createElement("td");
tdLink.appendChild(Link);
tr.appendChild(tdLink);
tabla.appendChild(tr);
}
}
function eliminarImpuesto(element)
{
//getting it back...
var i = element.getAttribute('data-i');
}
相关文章:
- 函数参数中的数据与指定变量之间的任何性能差异
- 使用Express捕获参数
- 参数变量出现ngTable指令问题
- AngularJS:我可以跳过函数参数回调吗
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 要求未定义JS回调参数
- 我的jQuery插件参数没有正确启动,遇到了问题
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- jquery设置为使用参数运行
- Javascript”;类“;带有参数的扩展
- 正在获取生成的PHP td值
- 为什么grunt contrib connect的中间件选项的第三个参数是未定义的
- 函数未将值作为参数传递
- 如何将参数传递到angularJs中的工厂
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- MVC 3页面导航和使用javascript传递参数
- 从查询字符串参数推断出正确的数据类型
- td元素中带有传递参数的Javascript函数
- 从已检查TR的TD获取参数