0

我正在使用 Scala Play Framework、Twirl 和 jQuery。

我有一个动态的行表,取决于模型中有多少数据:

<table>
  @for(i <- someDataModel){ //play form containing several fields
    <tr id="dataRow">@i.name</tr> //display the name field string
  }
</table>

我想收集这些行中的所有值,并将它们添加到一个数组中,以便在 jQuery 中处理它们以进行 CSV 导出。

我尝试使用 jQuery 收集数据:

$('#dataRow').filter(function () { 
  var array = [];
  var getData = $('[id="' + this.id + '"]').text(); //get all rows
  var i;
  for (i = 0; i < x.length; ++i) {
    alert(x[i]) //pop up on screen with each value found
    array.push(x[i]) //add to the array
  }
});

上面的代码确实找到了所有行值,但它一次收集了所有字符串名称,将它们全部合并为一个字符串,然后遍历每个字符。所以它几乎就在那里,但我只需要完整的价值观。

我的问题是,当所有行都具有相同的 ID 时,如何分别遍历所有这些数据并将它们添加到数组中?

4

1 回答 1

1

不如这样做:

var getData = $('[id="' + this.id + '"]').text();

你做这样的事情:

var getData = $('[id="' + this.id + '"]').each(function(){
    var value = $(this).text();
    alert(value);
    array.push(value)
});

评论中的人是对的,您需要使用类。然后,您可以只使用 .className 而不是选择 id 属性,但在这种情况下,它并不重要。你真的不想拥有超过 1 个唯一 ID,如果你这样做了,那么你做错了。

于 2017-03-17T23:50:46.793 回答