如何使用 JQuery 获取表的第一个 td 的值

How to get the value of the first td of the table using JQuery?

本文关键字:第一个 td 的值 何使用 JQuery 获取      更新时间:2023-09-26

我有一个表格,其中我绑定了来自该表单 Form.In 的值,我有一个主键字段作为 TicketId,我将其隐藏在表单中,在将其插入表中时,我正在显示它。对于绑定我使用的数据 Knockout.So 我想删除我将选择的行。因此,在选择它时,我应该获取该行的 id,以便我可以使用 ajax 将其传递给 Delete 操作。但我的问题是我没有得到如何做到这一点 id.So?我的代码:

<table id="table2" style="border: double">
                            <thead>
                                <tr>
                                    <td>Ticket ID</td>
                                    <td>Ticket Type</td>
                                    <td>No of Tickets</td>
                                    <td>Ticket Price</td>
                                    <td>Start Date</td>
                                    <td>End Date</td>
                                    <td>Action</td>
                                </tr>
                            </thead>
                            <!--Iterate through an observableArray using foreach-->
                            <tbody id="ticketid" data-bind="foreach:TicketDatas">
                                <tr  style="border: solid" data-bind="click: $root.getselectedTicket" id="updtr">
                                    <td id="rowid" data-bind="text:TicketId">@*<span data-bind="text:No_Of_Ticket"></span>*@</td>
                                    <td data-bind="text:SelectedTicketType">@*<span data-bind="text:No_Of_Ticket"></span>*@</td>
                                    <td data-bind="text:No_Of_Ticket">@*<span data-bind="text:No_Of_Ticket"></span>*@</td>
                                    <td data-bind="text:Ticket_Price">@*<span data-bind="text:Ticket_Price"></span>*@</td>
                                    <td data-bind="text:Start_Date">@*<span data-bind="text:Start_Date"></span>*@</td>
                                    <td data-bind="text:End_Date">@*<span data-bind="text:End_Date"></span>*@</td>
                                    <td>
                                        <button data-bind="click: $root.deleterec">Delete</button></td>
                                </tr>
                            </tbody>
                        </table>
<script type="text/javasript">
 self.deleterec = function () {
                if (confirm('Are you sure to Delete this ticket ??')) {
                    var tickid = $("#table2 tr:eq(0)").attr("id");
                    $.ajax({
                        type: "POST",
                        data: { id: tickid },
                        url: "Ticket/DeleteTicket",
                        //data: "{id:" + ko.toJSON(id) + "}",
                        success: function (data) {
                            self.TicketDatas.remove(data);
                            alert("Record Deleted Successfully");
                            //GetTickets();//Refresh the Table
                        },
                        error: function (error) {
                            alert(error.status + "<--and--> " + error.statusText);
                        }
                    });
                }
            };
</script>

所以如果我简短地问,只想找到这个陈述的解决方案

var tickid = $("#table2 tr:eq(0)").attr("id");

我不确定其余代码的进展情况,但是当您引用删除链接的 DOM 节点时,这里是 jQuery 部分。

我在这里将

大部分部分分配给变量名称以更具描述性,但您可以使其更简洁以供您使用。

$('#table2 .delete-link').click(function() {
  var deleteLink = $(this);
  var tableRow = deleteLink.closest('tr');
  var firstCell = tableRow.find('td:first-child');
  var ticketId = firstCell.attr('id');
  // ... Do what you need to do with the ticket ID.
  return false;
});

其他参考资料:

  • CSS 伪类:first-child
  • jQuery click()
  • jQuery closest()
  • jQuery find()
var tickid = $("#table2 tr:eq(0)").html();

var tickid = $("#table2 tr:eq(0)").val();