我是新手html和javascript。我在下面有明确的代码
HTML
<tr>
<td>1</td>
<td>Info1</td>
<td><input class="btn" value="Show" onclick="showTdSecond();" type="button"></td>
</tr>
<tr>
<td>2</td>
<td>Info2</td>
<td><input class="btn" value="Show" onclick="showTdSecond();" type="button"></td>
</tr>
<tr>
<td>3</td>
<td>Info3</td>
<td><input class="btn" value="Show" onclick="showTdSecond();" type="button"></td>
</tr>
的Javascript
<script type="text/javascript">
function showTdSecond() {
}
我想点击一个按钮我会得到第二个文本值。示例:Info1,Info2,Info3。请帮帮我,
答案 0 :(得分:4)
首先,您必须将this
值传递给内联事件处理程序
<input class="btn" value="Show" onclick="showTdSecond(this);" type="button">
然后使用this
上下文并遍历相关元素并收集其文本
function showTdSecond(_this) {
alert(_this.parentNode.previousElementSibling.textContent);
}
您可以在此处详细了解previousElementSibling。
答案 1 :(得分:0)
您可以使用包含父行的单元格的 cellIndex 属性来获取上一个单元格:
function showTdSecond(el) {
var cell = el.parentNode;
alert(cell.parentNode.cells[cell.cellIndex - 1].textContent);
}
<table>
<tr>
<td>1</td>
<td>Info1</td>
<td><input class="btn" value="Show" onclick="showTdSecond(this);" type="button"></td>
</tr>
<tr>
<td>2</td>
<td>Info2</td>
<td><input class="btn" value="Show" onclick="showTdSecond(this);" type="button"></td>
</tr>
<tr>
<td>3</td>
<td>Info3</td>
<td><input class="btn" value="Show" onclick="showTdSecond(this);" type="button"></td>
</tr>
</table>