2013-08-24 4 views
0

Я пытаюсь предупредить сообщение об щелчке каждого столбца. У меня есть таблица, в которой три столбца и четыре столбца, теперь я хочу сообщение с сообщением следующего столбца при третьем щелчке столбца каждой таблицы. Я пробовал это, но все столбцы получают значение не для определенного столбца. моя проблема это вызвать в каждом столбце клике, но я хочу предупреждение электронного письма только тогда, когда третий столбец нажмите каждую строкуполучить значение из определенного столбца

HTML

<table id='myTable'> 
<tr><td>R1C1</td><td>R1C2</td><td>R1C3</td><td>R1C4</td></tr> 
<tr><td>R2C1</td><td>R2C2</td><td>R2C3</td><td>R2C4</td></tr> 
<tr><td>R3C1</td><td>R3C2</td><td>R3C3</td><td>R3C4</td></tr> 
</table> 

JS

$("#myTable tr").bind("click", function() { 
    alert($(this).children("td").eq(3).html()); 
}); 

Demo Here

ответ

1

Попробуйте

$('table#myTable tr td:nth-child(3)').on('click', function() { 
      alert($(this).next().html()); 
     }); 

Проверить Here

-1

Try это:

var thirdEle = $("#myTable tr td:nth-child(3)"); 
thirdEle.bind("click", function() { 
    alert($(this).html()); 
}); 
1
$("#myTable tr td:nth-child(3)").click(function() { 
    alert($(this).next().html()); 
}); 
1

Попробуйте это:

$('#myTable').children('tr').children('td').eq(3).on('click', function() { 
    alert($(this).next().html()); 
}); 

выше функция гарантирует, что вы вызываете непосредственные дочерние элементы, но не любые вложенные другие же элементы , Решает будущие регрессии.

1

Если ваш стол будет иметь тот же размер, есть ответы, которые уже работают. Если ваша таблица будет расти, я бы рекомендовал сделать некоторые делегирования событий. Это значительно ускорит страницу, если будет большое количество прослушивателей событий.

$('#myTable').on('click', 'td:nth-child(3)', function(){ 
    alert($(this).text()); 
}); 

Смотрите эту jsfiddle и это jquery documentation.

3

пожалуйста, попробуйте этот код

$(document).ready(function() { 

      $('#myTable tr').each(function (Mindex, Mval) { 
       $(Mval).find('td:eq(2)').click(function() { 
        alert($(Mval).find('td:eq(3)').html()); 
       }); 
      }); 
0

ниже код будет найти и установить желаемое значение столбца

$('#myTable tr:gt(0)').each(function(){ 
     // console.log($('td:eq(3)', $(this)).html()); 
     alert($('td:eq(3)', $(this)).html()); 
     $('#myTable').find('tr:gt(0)').find('td:eq(3)').html("hello"); 
    });