javascript - 这只会删除我表中的第一行。我希望它使用 jQuery 和 html 删除我点击的任何一行

标签 javascript jquery html

我想知道如何删除我点击删除链接的表格行。现在它只删除一行。

<script type="text/javascript">
        $(function() {
            $("#deleteEvent").click(function(e) {
                $("#drow").remove();
                return false;
            });
    </script>

html在这里

<div id="students">
        <table>
            <caption>Students</caption>
            <tr>
                <th>First Name</th>
                <th>Last Name</th>
                <th>Student ID</th>
                <th>Email</th>
                <th>Action</th>
            </tr>
            <tr id="drow"><td>John</td><td>Doe</td><td>1234</td><td>john.doe@gmail.com</td><td><a      href="#" id="deleteEvent">Delete</a></td></tr>
            <tr id="drow"><td>Amy</td><td>Adams</td><td>234234</td><td>amy.adams@hotmail.com</td>   <td><a href="#" id="deleteEvent">Delete</a></td></tr>
            <tr id="drow"><td>Megan</td><td>Huffman</td><td>12255</td><td>amy.adams@hotmail.com</td><td><a href="#" id="deleteEvent">Delete</a></td></tr>
        </table>
        <a href="#" class="addRecord">Add Record</a> 
    </div>

最佳答案

您在 HTML 中重复使用了无效的 id 值。鉴于此,任何选择这些 id 的行为都是未定义的。例如:

$("#drow").remove();

它可能会删除第一个#drow,它可能会删除所有它们,它可能不会删除它们,它可能会抛出错误,等等。由于标记无效,因此行为未定义.

因此,您要做的第一件事就是不要在 HTML 中重复使用 id 值。您显示的 HTML 可以使用 class 值来代替:

<tr class="drow">

或者,您可能根本不需要 idclass...

如果删除按钮位于行内,那么您可以引用与单击的按钮相关的行:

$(this).closest('tr').remove();

这将从调用事件的元素开始,向上遍历 DOM,直到找到第一个 tr 元素,然后删除该元素。

<小时/>

编辑:您还在 a 标记上使用了重复的 id:

<a href="#" id="deleteEvent">

您可以将它们替换为:

<a href="#" class="deleteEvent">

并将选择器更改为:

$(".deleteEvent").click(function(e) {
    // code
});

或者您可以完全删除idclass,因为没有它们您仍然可以识别元素:

$("#students a").click(function(e) {
    // code
});

关于javascript - 这只会删除我表中的第一行。我希望它使用 jQuery 和 html 删除我点击的任何一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26243930/

相关文章:

html - :hover inherit the link color by default怎么可以

javascript - 无法在 D3 旋转地球仪上绘制折线

javascript - 在Electron应用程序中最有效的流视频方法? (getUserMedia?)

javascript - 我如何保存我的小注册页面中的所有数据并显示它们

javascript - window.location 不适用于单选按钮

javascript - jQuery map 实时数据更新

javascript - 单击时显示 xAxes

html - Css 旋转文本是锯齿状的

php - 如何阻止 XMLHTTP 相互冲突?

javascript - 循环 Javascript 中的跨度