如果选择了行,则仅显示一些html

时间:2011-10-26 10:28:06

标签: javascript jquery

我正在使用DataTables并使用此代码突出显示所选行:

    /* Click event handler */
    $('#items-table tbody tr').live('click', function () {
        var id = this.id;
        var index = jQuery.inArray(id, aSelected);

        if ( index === -1 ) {
            aSelected.push( id );
        } else {
            aSelected.splice( index, 1 );
        }

        $(this).toggleClass('row_selected');
    } );

我想要做的是,如果选择了一行或多行,则只显示以下html:

<p>
<a href="javascript:void(0)" id="delete">Delete selected rows</a>           
</p>

我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:1)

你可以在toggleClass

之后这样做
if($('#items-table tbody tr.row_selected').length > 0) {
    $("p").show();
else
    $("p").hide();

答案 1 :(得分:1)

if ($('#items-table tbody tr.row_selected').length > 0){
    $('#delete').show();
}
else {
    $('#delete').hide();
}

答案 2 :(得分:1)

您可以创建一个函数,检查每次点击选择了多少行。

例如:

function checkRows(){
    if( $('.row_selected').length > 0 ){
       $('#delete').show();
    }else{
       $('#delete').hide();
    }
}

然后在删除按钮上显示:

$('#delete').click(function(){
    $('.row_selected').slideUp(200,function(){
        $(this).remove();
    });
    $(this).hide(); // Hide delete button again
});

希望有所帮助:)