我有一个表,想要获取一个包含用户提供的查询的单元格值数组。
例如,用户输入“20”,表格为
120 240 220 110
我想要一个包含
的数组[120, 220]
我目前有
var data_list = jQuery('td:contains('+seach_val+')','table#data');
我也用.text()尝试了上面的内容,看看是否能得到我的文字,但这似乎都不起作用。
我想应该很简单,但我遇到了一些麻烦。
答案 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"]
答案 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);