我从我的数据源获取一个RecordID和一个标题。我只想在屏幕上显示标题列,但我需要该行中的RecordID用于点击事件。所以我把它们都拉进我的桌子,我正在寻找隐藏RecordID。如何隐藏表格列,但仍然使用点击事件? (JQuery Datatables)
我有一个填充了ajax源的表,因此我的数据的<tr>
和<td>
标记是动态创建的。他们不是代码的一部分,所以我不能简单地添加一个我可以用CSS隐藏的类。
<table id="example">
<thead>
<tr>
<th>RecordID</th>
<th>TITLE</th>
</tr>
</thead>
<tbody>
<!---Data and tags are dynamically generated--->
</tbody>
</table>
的数据表文件列出了加入功能oTable.fnSetColumnVis(0, false)
或"bVisible":false
属性的一对夫妇的选择。这两种工作都可以很好地隐藏我的列,但随后基于该列的单击事件将不再起作用。
这是我正在使用的点击事件。
$('#example').on('dblclick', 'tr', function(event) {
var td = $('td', this);
var RecordID= $(td[0]).text();
});
所以你可以看到它的访问索引0(该行中第一个TD或列)。一旦我隐藏列,另一个TD变为0 指数我仍然需要的recordId柱得到来自该行的信息,但我不想在屏幕上显示它。有任何想法吗?
如果您不需要ID列,为什么不直接在标题行上添加ID作为属性。 – Hatsjoem
如果您使用数据表fnSetColumnVis方法,则该列将不适用于任何JavaScript操作。尝试使用jquery隐藏列,通过设置显示样式。 – hanskishore
如果我尝试这个,它只隐藏标题行。 ('+(columnIndex + 1)+'),#example th:nth-child('+ columnIndex + 1)+')')。 hide();} hideColumn(0);' – madvora