user525146
user525146

Reputation: 4008

disable click event on first column

Can someone help me how to disable the click event on first column and the other columns should be clickable. I have tried several different ways like slice

td.slice() after tr element and also td:gt(0)

etc and was unsuccessful. I had been banging my head since 2 days and I didn't find any relevant solutions out on google.

$('#Table tbody tr').on("click",function(){
                    var aPos Table.fnGetPosition(this);
                    var aData = Table.fnGetData( aPos[6] );
                    //aData = $(this).parent().parent().html();
                    xyz = $(this).parent().parent().find("td").eq(1).html();                    
                    yzx= $(this).parent().parent().find("td").eq(7).html();
                    zxy= $(this).parent().parent().find("td").eq(2).html();
                    alert(aPos);

            });

Upvotes: 1

Views: 3066

Answers (3)

Selvakumar Arumugam
Selvakumar Arumugam

Reputation: 79860

Try stopPropogation on first column click DEMO

Edit: Added demo and fixed .find('td:first')

$('#Table tr').find('td:first').on('click', function (e) {
 e.preventDefault();
 e.stopPropagation();
});

Upvotes: 3

Tejs
Tejs

Reputation: 41266

You need to add some kind of identifier to the columns you want to use:

<tr>
    <td class="dontClickMe"></td>
    <td class="clickMe"></td>
</tr>

Then it's as simple as:

$('.clickMe').on('click', function() { ... });

Upvotes: 0

Huangism
Huangism

Reputation: 16448

add some kind of unique identifier on the first column and

$('identifier').click(function(){
    return false;
});

I think you can also target first column with the n-th child thing but I am not sure of the exact syntax. Maybe something like

$('table tr td:(nth-child(1)').on('click', function(){
    return false;
});

or something like the above, hope it helps

Upvotes: 0

Related Questions