这是代码
$(function() {
$(".category-list li ul li").children("a").each(function (){
var subListName = $(this).html();
var subListContent = $(this).next("ul").clone();
$(".subcat-grid ul li a:contains("+ subListName +")").after(subListContent);
});
});
所有内容都匹配正确,但使用subListName
的{{1}}正在&
中返回false
,因此内容未被添加。
我检查了变量$(".subcat-grid ul li a:contains("+ subListName +")")
的值和subListName
的返回值,看起来它们应该匹配。我不知道为什么$(".subcat-grid ul li a")
正在使用:contains
答案 0 :(得分:0)
您应该使用.text
来获取文字,否则&
等字符将转换为&
,这将无效,因为:contains
匹配innerText
1}},而不是innerHTML
$(function() {
$(".category-list li ul li").children("a").each(function (){
var subListName = $(this).text();
var subListContent = $(this).next("ul").clone();
$(".subcat-grid ul li a:contains("+ subListName +")").after(subListContent);
});
});
答案 1 :(得分:0)
无论何时处理字符串,都要查看结果。
在这种情况下,您的选择器将是:
.subcat-grid ul li a:contains(x & y)
这是不正确的。尝试:
.subcat-grid ul li a:contains('x & y')
即。用引号包装你的内容。