0

我正在使用带有选择列表(下拉列表)的水平表作为字段之一。当我单击提交时,我需要获取该列的表头值和下拉列表中的值。

我的表class = "views-table"基本上是这样的:

header1 | header2 | header3 | header 4
--------------------------------------
select    select    select   select
data1     data2     data3    data4 

[submit button]

我的下拉class="request-select"元素包含以下值:

select list:
  -empty
  -FIRST
  -SECOND

因此,在用户选择第一个值后,表格应如下所示:

header1 | header2 | header3 | header 4
--------------------------------------
select    FIRST    select   select
data1     data2     data3    data4 

[submit button]

用户点击提交后我期望的数据是:header2FIRST

change我可以从下拉列表中的事件中获取表头值:

jQuery('table.views-table').on('change', 'td', function(e) {  
    var tableHead= e.delegateTarget.tHead.rows[0].cells[this.cellIndex];
    alert([jQuery(tableHead).text()]);  
    // returns `header2` from dropdown with `FIRST` value selected
});

但我不知道如何从提交按钮向下钻取和访问这些数据。我不想使用隐藏元素或使用本地存储。关于我应该如何处理这个问题的任何想法?我对jQuery非常缺乏经验。如果您需要更多信息,请告诉我,如果需要,我可以提供更多详细信息。

4

2 回答 2

0

如果您能够获得单元格索引的句柄,那么您可以通过使用 .val() 而不是 .text() 来获取它的值。

于 2015-04-20T17:44:38.653 回答
0

其中一种方法是为您的标题和选择标签提供相关的 ID。例如,您可以在下拉列表中提供诸如“select-1”、“select-2”之类的 ID。同样,您必须为标题标签提供 ID,例如“thead-1”、“thead-2”...,现在在提交点击事件时,检查哪个下拉值已更改(值!=“”),然后获取该下拉 ID 的最后一位数字。现在您可以使用该数字来获取受尊重的标头的值。

于 2015-04-20T17:35:05.183 回答