get jquery:将值包含在数组中

时间:2011-07-19 00:04:43

标签: jquery contains

我有一个表,想要获取一个包含用户提供的查询的单元格值数组。

例如,用户输入“20”,表格为

120
240
220
110

我想要一个包含

的数组
[120, 220]

我目前有

var data_list = jQuery('td:contains('+seach_val+')','table#data');

我也用.text()尝试了上面的内容,看看是否能得到我的文字,但这似乎都不起作用。

我想应该很简单,但我遇到了一些麻烦。

3 个答案:

答案 0 :(得分:2)

如果您要创建数组,可以使用以下代码:

<table id="data">
    <tr><td>120</td></tr>
    <tr><td>240</td></tr>
    <tr><td>350</td></tr>
    <tr><td>220</td></tr>
</table>

search_val = 20;
data_list = [];
jQuery('td:contains('+search_val+')','table#data').each(function(){
    data_list.push($(this).text());
});
console.log(data_list);

在控制台中输出:

["120", "220"]

http://jsfiddle.net/Mj5G4/4/

答案 1 :(得分:0)

试试这个并告诉我以下是否有效:

var data_list = jQuery("td:contains('"+seach_val+"')","table#data");

在结束'之前注意引用"。我记得我过去遇到过类似的问题,我也希望能帮你解决这个问题:)希望有所帮助。

答案 2 :(得分:0)

你不能像这样循环吗?

var searchString = "20";
var results = [];
$('td').each( function(index, element){
    if($(element).text().indexOf(searchString) != -1){
     results.push($(element).text());   
    }
});
alert(results);

http://jsfiddle.net/XZWEh/1/