单击相应列时如何return table 命名?

How to return table name when corresponding column is clicked?

我想在单击相应列时获得 table 的标题。在我的示例中,列的标题和其余行都是动态创建的。

我动态生成的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>

注意:此 table 是从动态数据透视查询填充的,因此我已使用上述方法在我的 jsp 页面中显示 table。

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

因此,如果我理解正确,您希望在每一列 (td) 上都有一个点击事件,return 是该列动态生成的 label

您可以这样完成:

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

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

然后,您可以随意将 console.log 替换为 return。