我有一些 HTML 代码使用一些嵌入式 python 创建一个从 SQLlite 数据库中提取的结果表。HTML 还使用引导程序创建一个表格,以在鼠标悬停在每一行时突出显示这些行。
<div class="col-md-6">
<h3> Suggested tools </h3>
<table class="table table-hover">
<tr><th> Tool </th> <th> Function </th> </tr>
{% for post in posts %}
<tr class="table-light" onclick="changeClass()"> <td>{{post.tool}} </td> <td> {{post.summary}}</td> <td> </tr>
{% endfor %}
</table>
<p id="test"> </p>
</div>
当我选择特定行时,我希望该行改变颜色。使用 Bootcamp,我知道我可以通过更改类属性来实现这一点,以下代码会产生所需的结果:
<tr class="table-light" onclick="this.className='success'"> <td>{{post.tool}} </td> <td> {{post.summary}}</td> <td> </tr>
这很有效,因为每一行都是在循环中生成的,所以这个对象确保只有选定的行的类发生了变化。问题是我还有一些想要添加到 onclick 事件的 javascript 代码。有没有办法使用 javascript 函数来访问 this 对象,以便以与 HTML 中的元素相同的方式使用它?
我已经尝试过了,但正如预期的那样没有成功 HTML:
<tr class="table-light" onclick="changeClass()"> <td>{{post.tool}} </td> <td> {{post.summary}}</td> <td> </tr> code here
Javascript:
function changeClass() {
return "this.className= 'table-success';}