Jquery 将str与选择器匹配
我有一个列表中的项目列表Jquery 将str与选择器匹配,jquery,Jquery,我有一个列表中的项目列表 第一项第二项 另一项 此外,我还从URL获取以下格式的变量: Item-two 选择匹配项的最佳方式是什么 现在,我使用URL变量并去掉连字符以合成一个单词 $item= str_replace('-', '', $_GET['item']); 那么,现在,我是否需要遍历列表并删除空格/破折号和匹配项 var getItem = '".$item."'; if (getTerm != '') { $('#itemList li').each(fu
Item-two
选择匹配项的最佳方式是什么
现在,我使用URL变量并去掉连字符以合成一个单词
$item= str_replace('-', '', $_GET['item']);
那么,现在,我是否需要遍历列表并删除空格/破折号和匹配项
var getItem = '".$item."';
if (getTerm != '') {
$('#itemList li').each(function() {
var that = $(this).replace(/[\\. ,:-]+/g,'');
if (getTerm == that) {
// found selector -- do something
}
});
} else {
// do something else
}
它对我来说是正确的,但是我没有得到找到匹配元素的预期结果。。。我遗漏了什么?假设
getTerm
在混合js-php范例中正常工作。您应该能够找到这样的元素:
// instead of "Itemtwo" or "Item-two"
// lets make it match exactly as in "Item two"
getTerm = getTerm.replace('-',' ');
$('#itemList li').each(function() {
var that = $(this);
if (getTerm == that.text()) {
that.css('color','red'); // for example
}
});
你在混合使用JavaScript和PHP吗?不要认为
var getItem='“$item.”如果它在一个由php解析的文档中,并且被正确格式化为php输出javascript,则代码>将起作用。我怀疑问题在于regexp和.replace的不正确用法是的,var工作正常。我在前面的页面中设置了它,并使用PHP去除连字符。它产生类似“itemtoo”的内容。我的问题是如何使用.each()。我只需要找到第一个匹配的元素。给投票人的信息:想提供解决方案吗?。这会更容易,但URL中的所有项目都有连字符,列表中只有少数项目有连字符,而大多数项目没有。但是你的例子帮助我看到了我遗漏的东西:.text()谢谢!