2015-09-14 166 views
0

我在wordpress中有一個選項列表,但是它在子級菜單的自動a中生成 - 在它之前。現在我想循環它們,但不能得到它似乎工作。刪除選擇選項中的所有「 - 」

我鎖定了我的菜單項並嘗試循環刪除「 - 」。

var $menuitem = $(".hasCustomSelect .menu-item"); 

$menuitem.filter(function(){ 
    return $.trim($(this).text()) == '-' 
}).remove(); 

小codepen

http://codepen.io/denniswegereef/pen/NGGrgR

+1

這是因爲裝飾不僅能消除空白。你不能修剪刪除其他字符。您需要使用不同的工具,例如'regex'。 –

+0

從來沒有聽說過,要去看看。 – Dennis

+0

只有一個'-'的條目會發生什麼?像9.5到10之間?這是你在http://jsfiddle.net/j08691/acfsnmn1/之後? – j08691

回答

0

我可以看到 - Vs的 - 從codepen或從下面的代碼嘗試複製粘貼

而且我猜你想使用

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 `—` 

更新的代碼筆

+0

如果我結合代碼也刪除短破折號不起作用。這隻會消除兩者之間的空隙。 – Dennis

0

如果刪除分隔符選項,是您想要的,那麼imtheman有一個solution for you

如果你想從菜單文字說明(我對你所需要的第一個猜測)刪除開頭的破折號,那麼你可以用下面的代碼片段去:

var $menuitem = $(".hasCustomSelect .menu-item"); 
$.each($menuitem, function(key, val){ 
    $(val).text($(val).text().replace(/—+ /,'')); 
});