Javascript 获取jQuery中已单击行的ID值

Javascript 获取jQuery中已单击行的ID值,javascript,jquery,html,asp.net,Javascript,Jquery,Html,Asp.net,我有一张桌子,td的设置如下: @foreach (var item in ViewBag.WatchListCompetitor) { <tr role="row" class="odd"> <td class="" tabindex="0">@item.SentWord</td> <td class="sorting_1">@item.Comment</td> <td c

我有一张桌子,td的设置如下:

@foreach (var item in ViewBag.WatchListCompetitor)
{
    <tr role="row" class="odd">
        <td class="" tabindex="0">@item.SentWord</td>
        <td class="sorting_1">@item.Comment</td>
        <td class="sorting_1">@item.Rating</td>
        <td class="sorting_1">@item.SellerFeedback</td>
        <td class="sorting_1 deleteAction"><i class="fa fa-close"></i></td>
        <td class="idRow" style="display:none;" id="@item.WatchListID">@item.WatchListID</td>
    </tr>
}
我得到的结果是:

Object { length: 1, prevObject: Object, context: <td.sorting_1.deleteAction>, 1 more… }
Object{length:1,prevObject:Object,context:,还有1个…}

触发事件时,如何获取td idRow值?

您可以使用
最近的
到达该行,然后使用
查找
到达idRow td:

$('.deleteAction').click(function () {
    var $idRowTd = $(this).closest(".odd").find(".idRow");
    var id = $idRowTd.prop("id");
    // use the element and id here
});

总是喜欢使用
最近的
查找
而不是查找同级:当您更改HTML(例如,包装元素)时,代码保持有效。出于同样的原因,查找类(例如
“.odd”
)比查找标记(例如
“tr”
)更好。

您可以使用
最近的
到达行,然后使用
查找
到达idRow td:

$('.deleteAction').click(function () {
    var $idRowTd = $(this).closest(".odd").find(".idRow");
    var id = $idRowTd.prop("id");
    // use the element and id here
});
总是喜欢使用
最近的
查找
而不是查找同级:当您更改HTML(例如,包装元素)时,代码保持有效。出于同样的原因,查找类(例如
“.odd”
)比查找标记(例如
“tr”
)更好。

找到类的
idRow
并检索其
id

$('.deleteAction').click(function () {

    console.log($(this).siblings("td.idRow").attr('id'));
});
使用类
idRow
查找并检索其
id

$('.deleteAction').click(function () {

    console.log($(this).siblings("td.idRow").attr('id'));
});
尝试:

尝试:

您可以使用JQuery的.prop().attr()来获得所需的参数。在特定情况下,属性和属性之间的差异可能很重要在jQuery 1.6之前,在检索某些属性时,.attr()方法有时会考虑属性值,这可能会导致不一致的行为。从jQuery 1.6开始,.prop()方法提供了一种显式检索属性值的方法,而.attr()则检索属性

$('.deleteAction').click(function () {
    var $idRowTd = $(this).closest(".odd").find(".idRow").attr("id"); //Before/upto jQuery 1.6;
var $idRowTd = $(this).closest(".odd").find(".idRow").prop("id");//for jQuery 1.6 and above
});
您可以使用JQuery的.prop().attr()来获得所需的参数。在特定情况下,属性和属性之间的差异可能很重要在jQuery 1.6之前,在检索某些属性时,.attr()方法有时会考虑属性值,这可能会导致不一致的行为。从jQuery 1.6开始,.prop()方法提供了一种显式检索属性值的方法,而.attr()则检索属性

$('.deleteAction').click(function () {
    var $idRowTd = $(this).closest(".odd").find(".idRow").attr("id"); //Before/upto jQuery 1.6;
var $idRowTd = $(this).closest(".odd").find(".idRow").prop("id");//for jQuery 1.6 and above
});

我得到的对象[对象]结果如下this@User987
$idRowTd.prop('id')
$idRowTd.attr('id')@RoryMcCrossan工作得很好,非常感谢!:)@Denys由于某些原因,控制台中的ID现在未定义。我得到的object[object]结果如下this@User987
$idRowTd.prop('id')
$idRowTd.attr('id')@RoryMcCrossan工作得很好,非常感谢!:)@Denys现在在控制台中未定义该IDreason@User987很乐意帮忙……)快乐编码!!你也是我的朋友,也祝你新年快乐:)@User987很高兴帮助你快乐编码!!我的朋友,你也是,新年快乐:)