我试图在页面上创建一个Div如果页面后面有一个单词,则显示? ,如果页面中出现10个列表中的任何单词,我真正喜欢它的内容是什么?我想要寻找他们的唯一地方就是那个TD课程" sku nobr"之后的课程" td-title"
我是一个新手,我用这个代码得到它的H1值,但我不知道怎么用4523这样做呢?
感谢!!!!!
<script type="text/javascript">
$(document).ready(function(){
if ($(".sku nobr:contains('4523')").length) {
$("#thingtohide").removeAttr("style").none();
}
});
</script>
&#13;
<div id="thingtohide" style="display: none;">COOL TEXT TO DISPLAY</div>
<tr class="cart-item-row">
<td class="sku nobr">
<span class="td-title">SKU:</span>
4523
</td>
</tr>
&#13;
答案 0 :(得分:2)
首先,您的HTML无效。您错过了<table></table>
代码。
<div id="thingtohide" style="display: none;">COOL TEXT TO DISPLAY</div>
<table>
<tbody>
<tr class="cart-item-row">
<td class="sku nobr">
<span class="td-title">SKU:</span>4523
</td>
</tr>
</tbody>
</table>
其次,你的选择器是错误的。将.sku nobr:contains('4523')
替换为.sku:contains('4523')
$(document).ready(function(){
if ($(".sku:contains('4523')").length) {
$("#thingtohide").show();
}
});
修改如果您要查找任何数字(可以包含逗号),您必须更具创意。您可以使用filter方法。这是另一个demo。
$(document).ready(function(){
// find TD with class 'sku' containing numbers
var $sku = $("td.sku").filter(function () {
// assuming the number is 4523,8563,9997,7757
// text = $.trim($(this).text()); => SKU:4523,8563,9997,7757
// text = text.replace(/SKU:|,/g, ''); => 4523856399977757
var text = $.trim($(this).text().replace(/SKU:|,/g, ''));
// check that it is a number
return text && !isNaN(text);
});
// check if there are any matches
if ($sku.length) {
$("#thingtohide").show();
}
});
答案 1 :(得分:1)
看起来你有一个小错字。
$(".sku nobr:contains('4523')")
更改为:
$(".sku.nobr:contains('4523')")
多个类需要用.
分隔,而不是空格。
答案 2 :(得分:0)
检查cel是否包含多条文本我做了这个:
<script>
$(document).ready(function(){
if ($(".sku:contains('4523'),.sku:contains('5678')").length) {
$("#thingtohide").show();
}
});
</script>