如何使用jQuery通过分隔符分割多个元素的文本?

时间:2022-11-29 13:06:56

I am using jQuery to get the text value of multiple td elements in a row:

我使用jQuery连续获取多个td元素的文本值:

var getText = $(this).closest("tr").text();

The value of getText ends up being one long concatenated string of the text of each element with no breaks. Is it possible to add a delimiter for each new td element that it gets the text value from?

getText的值最终是每个元素的文本的一个长连接字符串,没有中断。是否可以为每个获取文本值的新td元素添加分隔符?

1 个解决方案

#1


8  

I'd first suggest retrieving an Array of the cells' text, rather than a single String:

我首先建议检索单元格文本的数组,而不是单个字符串:

var cellTexts = $(this).closest("tr").find('td').map(function(){
                  return $(this).text();
                }).get();

If you wish to have a single string, with a custom delimiter, you can then call Array.prototype.join(), and specify the delimiter you wish to use, for example a comma:

如果您希望使用自定义分隔符的单个字符串,则可以调用Array.prototype.join(),并指定要使用的分隔符,例如逗号:

var cellTexts = $(this).closest("tr").find('td').map(function(){
                  return $(this).text();
                }).get(),
    allText = cellTexts.join(',');

References:

#1


8  

I'd first suggest retrieving an Array of the cells' text, rather than a single String:

我首先建议检索单元格文本的数组,而不是单个字符串:

var cellTexts = $(this).closest("tr").find('td').map(function(){
                  return $(this).text();
                }).get();

If you wish to have a single string, with a custom delimiter, you can then call Array.prototype.join(), and specify the delimiter you wish to use, for example a comma:

如果您希望使用自定义分隔符的单个字符串,则可以调用Array.prototype.join(),并指定要使用的分隔符,例如逗号:

var cellTexts = $(this).closest("tr").find('td').map(function(){
                  return $(this).text();
                }).get(),
    allText = cellTexts.join(',');

References: