gpt4 book ai didi

javascript - 匹配出现在表格单元格行首的单词

转载 作者:行者123 更新时间:2023-12-03 12:33:11 24 4
gpt4 key购买 nike

请看一下这个 FIDDLE 。你如何确保它只匹配 Sodium 的出现出现在表格单元格行的开头,例如:

<td>Sodium</td> , <td>Sodium (from Kitchen Salt)</td>

但不是

<td>Vitamin sodium</td> , <td>Fish Sodium</td>

我的尝试

`var find_Sodium = /^Sodium/ 
alert($('.'+title+'table').find('td:contains(find_Sodium)').next().html());`

不工作。

$.ajax({
url: "url.json",
success: function (data) {

$(data.query.results.json.json).each(function (index, item) {

var title = item.title;
var table = item.table;
if (table.indexOf("Sodium") >= 0) {

$('.'+ title+'table').html(''+table+'');
var find_Sodium = /^Sodium/;
alert($('.'+title+'table').find('td:contains(find_Sodium)').next().html());

}
});
},
error: function () {}
});

表结构:

<table class="tablesorter">
<thead>
<tr>
<td>Ingredient</td>
<td>Amount</td>
<td>% Daily Value**</td>
</tr>
</thead>
<tbody>
<tr>
<td>Calories</td>
<td>10</td>
<td></td>
</tr>
<tr>
<td>Sodium</td>
<td>2g</td>
<td>&lt;1</td>
</tr>
<tr>
<td>Vitamin C</td>
<td>110mg</td>
<td>4</td>
</tr>
<tr>
<td>Potassium sodium</td>
<td>235mg</td>
<td>6</td>
</tr>
<tr>
<td>Omega 6</td>
<td>1100mg</td>
<td>*</td>
</tr>
<tr>
<td>Vitamin Sodium</td>
<td>1200mg</td>
<td>*</td>
</tr>
<tr>
<td>Vitamin E</td>
<td>300mg</td>
<td>*</td>
</tr>
</tbody>
</table>

最佳答案

:contains 不接受正则表达式,执行此操作的方法是 filter()

$('.'+title+'table').find('td').filter(function() {
return $(this).text().indexOf('Sodium') === 0;
}).next().html();

FIDDLE

使用 indexOf === 0 确保 Sodium 的索引为零,这是元素文本中出现的第一个元素

关于javascript - 匹配出现在表格单元格行首的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23841509/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com