如何在没有任何元素标识

时间:2016-04-03 21:00:24

标签: javascript html events html-table click

我有一个简单的html表代码。我需要编写一个Javascript函数,它能够警告使用鼠标选择的任何行的内容(通过单击)。

我没有任何元素ID。所以我需要使用与点击鼠标相关联的事件......

例如:

<tr>
  <td onclick="...">Mamata</td>
  <td>Sharma</td>
  <td>20</td>
</tr>

我需要编写一个javascript函数,该函数能够通过警告显示我通过单击选择的表的任何内容。 例如,如果我点击&#39; Mamata&#39;,我需要在屏幕上看到显示&#39; Mamata&#39;。

的警告。

6 个答案:

答案 0 :(得分:1)

你可以这样做:

&#13;
&#13;
var td = document.getElementsByTagName("td");
for (var i = 0; i < td.length; i++) {
  td[i].onclick = function() {
    alert(this.innerHTML);
  }
}
&#13;
<table>
  <tr>
    <td>Mamata</td>
    <td>Sharma</td>
    <td>20</td>
  </tr>
</table>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

定义此功能

function alertContent(sender){alert(sender.innerHTML);}

并在

中使用它

的onclick =&#34;的javascript:alertContent(本)&#34;

答案 2 :(得分:0)

这样的事,

<tr>
  <td onClick="alert(this.innerHTML)">Mamata</td>
  <td>Sharma</td>
  <td>20</td>
</tr>

更好的选择如下: 声明一个函数,

function alertcontent()
    {
        _sender = arguments.callee.caller.arguments[0].target;
        if (_sender.tagName == "TD")
        {
            alert(_sender.innerHTML);
        }
    }

并将其分配给表onclick事件,例如;

<table onclick="alertcontent()">
...
...
</table>
这样你就可以少用编码......

答案 3 :(得分:0)

这是一个有效的解决方案 - http://jsbin.com/wigolunowa/edit?html,output

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>

  <table border=1>
    <tr>
      <td onClick="alert(this.innerHTML)">Mamata</td>
      <td>Sharma</td>
      <td>20</td>
    </tr>
  </table>

</body>
</html>

答案 4 :(得分:0)

您可以尝试向每个<td>添加一个“OnClick”事件,并提醒其innerHTML,如下所示:

<td onclick="alert('Your value is '+this.innerHTML)">1</td>
<td onclick="alert('Your value is '+this.innerHTML)">ABC</td>

或者您可以创建循环遍历所有<td>单元格的JS函数(通过标记选择它们)并获取它们的值:

var myCell = document.getElementsByTagName('td');

for(var i=0; i<=myCell.length; i++){
    myCell[i].addEventListener('click', valueOnClick);
}

function valueOnClick(){
    alert('Your value is '+this.textContent);
}

答案 5 :(得分:0)

您可以向表格添加点击处理程序(一次)并检查单击了哪个单元格。以下示例检查单元格(使用&#34; TD&#34;标记),但可以轻松更改以检查行:

的javascript

function showElementContent(event, table)
{
    event = event || window.event;
    for(var node = event.target || event.srcElement; node && node!= table; node = node.parentNode)
    {   if(node.tagName == "TD")
            break;
    }
     alert(node.innerText);
}

HTML

<table onclick="showElementContent(event, this)">
  <tbody>
    <tr><td>a cell</td>
      <td>a cell with a <span>spanned element</span></td>
    </tr>
  </tbody>
</table>