-1

我正在尝试将一个类添加到我使用 jTable 插件生成的行中,但是我需要将其添加到某些行中,这些行在<p>我需要更改行背景的项目上具有“突出显示”的类。这些我在生成表格的同时生成。我正在使用这个:

$( ".highlighted" ).parent().parent().addClass("highlight");

但它不起作用......我假设是因为它找不到我引用的类。我怎样才能解决这个问题?或者有没有其他方法可以做到这一点?提前致谢

*编辑* 以下是我使用 jTable 插件的方法:

$(document).ready(function () {
          $('#items').jtable({
        title: 'Items',
        actions: {
            listAction:list.php
        },      
        fields: {
            picture: {
                title: 'Picture',
                width: '1%',
                display: function (data) {
                    if(data.record.picture!=null){
                        return '<img src="'+data.record.picture+'"/>';
                    }   
                }
            },
            item: {
                title: 'Item ID' ,
                create: false,
                edit: false,
                width:'1%'
            },
            itemname: {
                title: 'Item Name' ,
                create: false,
                edit: false,
                width: '30%'
            },
            status: {
                title: 'Status',
                display: function(data){
                    var status=data.record.status;
                    if(status=="Y"){
                        return data.record.status;
                    }
                    else {
                        return "<p class='highlighted'>"+data.record.status+"</p>";
                    }

                }
            }                   
        }
    });
    $('#items').jtable('load');
    $(".highlighted").parent().parent().addClass("highlight");
});

您可以看到我在状态字段中添加了类。

4

3 回答 3

0

确保在创建row..之后添加类

使用closest而不是parent

$( ".highlighted" ).closest("tr").addClass("highlight");
于 2013-06-17T18:02:09.860 回答
0

我没有看到你的标记,但也许你的 DOM 导航不正确?尝试使用closest(),它将返回与传递的选择器匹配的第一个祖先(在本例中为tr元素):

$(".highlighted").closest("tr").addClass("highlight");

http://api.jquery.com/closest/

于 2013-06-17T18:02:12.483 回答
0

您还可以使用:has()选择器

$('tr:has(p.highlighted)').addClass('highlight')

或使用.has()方法

$('tr').has('p.highlighted').addClass('highlight')
于 2013-06-17T18:06:43.233 回答