如何使用javascript生成的html获取标签的ID?
问题描述:
我有这样的事情:如何使用javascript生成的html获取标签的ID?
td = '<td id = "someId"> Text <input type = "text" name = "someName" value = "someValue" onchange="textChange(' + "someId" + ')"></td>';
var tag = document.createElement("tr");
tag.innerHTML = td;
document.getElementById("mainTable").appendChild(tag);
但部分:
"textChange(' + "someId" + ')"
是错误的,因为如果我想引用这样的:
document.getElementById("someId").name
这是不确定的。
我应该怎么做?
答
这是因为您的td
'someId'没有属性名称。 这是从你的input text
。
答
很难给你实际的代码,因为你没有给我们实际的代码,但你可能寻找类似onchange="textChange(this.parentNode.getAttribute('id'))"
话虽这么说,这不是处理DOM操作的最佳方式。你有没有考虑过寻找一个JavaScript框架,如jQuery?这些框架使这类繁琐的任务非常简单。 jQuery的语法会像$(this).parent().attr('id')
哦,我的坏。我认为这是因为这是javascript动态生成的html,并且在'Ctrl U'上不可见。 – proggix