单击相应列时如何返回表名?

时间:2015-01-20 13:15:53

标签: jquery html dynamic html-table

每当我点击相应的列时,我想得到表格的标题。在我的示例中,列的标题和其余行都是动态创建的。

我动态生成的表

tr = $('<tr/>');
$.each(vendor_name, function(j, vendor) {
    tr.append($("<td/>").html('<label >'+vendor_name[j]+'</label>'));// column names
})

 $('#tbl_items').append(tr);

$.each(result, function(i, item) {
   tr = $('<tr/>');
    tr.append($("<td/>").html('<label >'+item['ITEM_NAME']+'</label>'))                              
    tr.append("<td>" + item['QUANTITY'] + "</td>");
    $.each(vendor_name, function(k, vendor) { 
        tr.append($("<td/>").html('<label name="qty" class="name">'+item["'"+vendor_name[k]+"'" ]+'</label>')); 
    });
    $('#tbl_items').append(tr);
});

<table id='tbl_items'><table>

注意:这个表是从动态数据透视查询填充的,所以我使用上面的方法在我的jsp页面中显示表。

根据鼠标单击显示/获取列名。

1 个答案:

答案 0 :(得分:0)

因此,如果我理解正确,您希望每列(td)都有一个点击事件,它会返回列动态生成的label

你可以这样做:

$('#tbl_items td').click(function() {
  getColumnName(this);
});

function getColumnName(item) {
  var el = $(item).find('label').attr('name');
  console.log(el);
}

然后只需在休闲时用回车替换console.log。