Javascript 删除所有“-&引用;内部选择选项
我在wordpress中有一个选项列表,但它是在子级菜单的自动a-之前生成的。现在,我想把它们循环出来,但无法得到它似乎工作 我以菜单项为目标,尝试循环出“-”以删除它们Javascript 删除所有“-&引用;内部选择选项,javascript,jquery,Javascript,Jquery,我在wordpress中有一个选项列表,但它是在子级菜单的自动a-之前生成的。现在,我想把它们循环出来,但无法得到它似乎工作 我以菜单项为目标,尝试循环出“-”以删除它们 var $menuitem = $(".hasCustomSelect .menu-item"); $menuitem.filter(function(){ return $.trim($(this).text()) == '-' }).remove(); 小密码笔 如果我理解正确的话。问题是您试图匹配的破折号类
var $menuitem = $(".hasCustomSelect .menu-item");
$menuitem.filter(function(){
return $.trim($(this).text()) == '-'
}).remove();
小密码笔
如果我理解正确的话。问题是您试图匹配的破折号类型错误
-
vs-
。改为试试这个return$.trim($(this.text())=='-'代码>
我可以从代码笔或代码下面看到-vs-a-,尝试复制粘贴
我猜你也想用
var $menuitem = $(".hasCustomSelect .menu-item");
$menuitem.filter(function(){
return $.trim($(this).text()).indexOf('—')>-1;//all values containing `—`
}).remove();
或者如果你真的只想删除单比
return $.trim($(this).text())=='—'; //the value that is `—`
更新的代码笔如果删除分隔符选项是您想要的,则imtheman有一个
如果您想从菜单标题中删除前导破折号(我对您所需内容的第一个猜测),则可以使用以下代码段:
var $menuitem = $(".hasCustomSelect .menu-item");
$.each($menuitem, function(key, val){
$(val).text($(val).text().replace(/—+ /,''));
});
这是因为trim只删除空白。您不能让trim删除其他字符。您需要使用不同的工具来完成此操作,例如,regex
。从未听说过它,请看一看。对于仅为一个-
的条目,会发生什么情况?比如9.5到10之间?这就是你想要的吗?我想要的,这是我找到这个问题的解决方案后的一部分,它应该只是删除元素,当它有一个-。如果你有一个想法,如果我结合代码也删除短破折号它不工作。这只会删除中间的空格。