我如何通过jQuery访问td类?

时间:2011-05-05 19:25:05

标签: javascript jquery class

如何通过jquery访问我的td类 这是HTML代码

<td class="selectable" id="shoes-<?= $color->id ?>" ></td>

  <td><a href="?shoes=<?php  echo $color->id; ?>" title="Select"
     <?php if($shoes==$order->shoes){ ?> class="selected"<?php } ?>>

这是jQuery代码

$('td.selectable a').click(function() {


    var $parent = $(this).parent();
    var data = $parent.attr('id').split('-');
    var type = data[0];
    var typeId = data[1];

如果我发出警报(打字);我一无所获 你可以帮忙吗?

现在我解决了但第二部分仍然存在问题 我试图切换我应该出现的课程,而点击这里的链接是html代码

<td class="selectable" id="person-<?= $person->id ?>">
     <a href="?person=<?php  echo $person->id; ?>" title="Selecteren"
 if($person==$order->person){ ?> class="selected"<?php } ?>><?php echo $person->name;?></a></td>

它适用于span类和div类,但是class = selected不起作用

$('#personAmount td.selectable  a').click(function() {
       var $parent = $(this).parent()
        var data = $parent.attr('id').split('-');
        var type = data[0];
        var typeId = data[1];


switch(type){
            case 'person':
            $(this).prepend('<a class="selected"></a>');

            break;
            case 'color':
            $(this).prepend('<div class="checked"></div>');

            break;
            default:
            $parent.prepend('<span class="checked"></span>');

        }

4 个答案:

答案 0 :(得分:4)

$('td a').click(function(e) {
    var id = $(this).closest('tr').find('.selectable').attr('id');
    var d = id.split('-');
    var item_type = d[0];
    var type_id = d[1];
    alert(type_id);
    alert(item_type);
});

working demo

答案 1 :(得分:1)

在您的代码中,包含<td>的{​​{1}}没有<a>id属性。 class事件不会绑定到click

答案 2 :(得分:0)

$(this).parent().prev();

你有这样的层次结构:

<td class="selectable"></td>
<td>
    <a>

答案 3 :(得分:0)

使用您当前的HTML:

<强> Live Demo

$('td.selectable + td a').click(function() {
    var $parent = $(this).parent().prev();
    var data = $parent.attr('id').split('-');
    var type = data[0];
    var typeId = data[1];
    alert(type);
});