以下语句产生错误:
TypeError:$(...)。children(...)。contains不是函数
$('.woocommerce-checkout .shop_table tr.cart_item dl.variation').each(function() {
if ($(this).children('.variation-Billing').contains("Once Off")) {
$(this).children('.variation-Billing').contains("Once Off").show().siblings('.variation-Billing').show();
}
});
我做错了什么?
答案 0 :(得分:4)
错误是正确的; '含有'不是一种方法 - 它是一个选择器,使用:contains()
。
另请注意,if
语句应检查jQuery对象的length
属性,以查看是否找到了任何元素。试试这个:
$('.woocommerce-checkout .shop_table tr.cart_item dl.variation').each(function() {
var $oneOffBillings = $(this).children('.variation-Billing:contains("Once Off")');
if ($oneOffBillings.length) {
$oneOffBillings.show().siblings('.variation-Billing').show();
}
});