Javascript 获取函数(此)td元素的ID
我通过函数发送TD,但无法与ID交互 HTML:Javascript 获取函数(此)td元素的ID,javascript,html,function,this,Javascript,Html,Function,This,我通过函数发送TD,但无法与ID交互 HTML: JS: 功能移动(td){ //我要这个td的ID,我用“this”捕捉到的 var tdId=td.id;//strong文本对我来说,它很好用:) 这是一把小提琴: var move=函数(td){ //我要这个td的ID,我用“this”捕捉到的 var tdId=td.id;//您的第一个语句运行良好 我随便举了一个例子: (检查控制台以获取输出!) HTML: <table> <tr>
JS:
功能移动(td){
//我要这个td的ID,我用“this”捕捉到的
var tdId=td.id;//strong文本对我来说,它很好用:)
这是一把小提琴:
var move=函数(td){
//我要这个td的ID,我用“this”捕捉到的
var tdId=td.id;//您的第一个语句运行良好
我随便举了一个例子:
(检查控制台以获取输出!)
HTML:
<table>
<tr>
<td id="1" onclick="move(this);">a</td>
<td id="2" onclick="move(this);">b</td>
<td id="3" onclick="move(this);">c</td>
</tr>
</table>
输出:
1
2
3
有几件事需要解决:
1.HTML ID应以字母开头
这在HTML5中不再是一个要求,但您仍然应该这样做
如果要将数据附加到元素,应使用data-*
属性
2.不引人注目的JavaScript
我删除了onclick
属性,以便采取更多的方法。我在表
元素中附加了一个简单的id
,以便于针对我们关心的特定td
元素
//我们的移动函数
功能移动(elem){
log(elem.getAttribute(“数据id”);
}
//我们的点击监听器
函数onClick(事件){
移动(这个);
event.preventDefault();
}
//获取表的td元素
var table=document.getElementById(“我的表”);
var tds=table.getElementsByTagName(“td”);
//循环遍历每个td并添加一个单击侦听器
对于(var i=0,len=tds.length;我很好用。您正在检查if(tds[td]。innerHTML==“last”){
,而td内的内容是空的,所以基本上是tds[td]。innerHTML=''HTML4浏览器?如果是这样,id
s不应该以数字开头。不,bucle工作正常,不工作的行是警报(td.id)我无法显示在函数中调用的td的ID。“你没有问题”不是答案。是的…它工作了…我再次尝试删除函数中的所有代码并工作了。这是我的问题,谢谢!!
var move = function(td) {
//I want the ID of this td that I've captured by "this"
var tdId = td.id; //<--- This doesn't works
alert(tdId);
<table>
<tr>
<td id="1" onclick="move(this);">a</td>
<td id="2" onclick="move(this);">b</td>
<td id="3" onclick="move(this);">c</td>
</tr>
</table>
function move(td) {
console.log(td.id);
}
1
2
3