簡體   English   中英

試圖通過jQuery / replace()刪除括號內的錨文本

[英]Trying to remove anchor text within brackets via jQuery / replace()

我一直在搜索stackoverflow來找到解決方案,但似乎無法弄清楚我在做什么錯。 我正在嘗試在菜單的主/父鏈接中選擇“()”括號內的任何內容,然后使用.replace()將其刪除,但似乎什么也沒有發生。

JSFiddle: http : //jsfiddle.net/1rndwz3u/1/

JS:

jQuery(document).ready(function () { 
    jQuery(".menu-name-menu-category-menu ul.nav li > a").html().replace(/\(.*?\)/g,"");
});

HTML:

<div class="menu-name-menu-category-menu">
    <ul class="menu nav">
        <li class="first expanded dropdown active-trail">
            <a title="Heavy Equipment Rentals (0)" href="#">Heavy Equipment Rentals (0)<span class="caret"></span></a>
            <ul class="accordion-body">
                <li><a title="Excavator Rentals (2)" href="#">Excavator Rentals (2)</a></li>
                <li><a title="Mini Excavator Rentals (6)" href="#">Mini Excavator Rentals (6)</a></li>
                <li><a title="Skid Steer Rentals (9)" href="#">Skid Steer Rentals (9)</a></li>
            </ul>
        </li>
        <li class="active-trail"><a title="Tool Rentals (1)" href="#">Tool Rentals (1)</a></li>
        <li class="last expanded dropdown active-trail">
            <a title="Construction Rentals (0)" href="#">Construction Rentals (0) <span class="caret"></span></a>
            <ul class="accordion-body">
                <li><a title="Gator, UTV &amp; ATV Rentals (2)" href="#">Gator, UTV &amp; ATV Rentals (2)</a></li>
            </ul>
        </li>
    </ul>
</div>

我已經嘗試過使用.html().text()但是都沒有做任何事情,也嘗試僅使用“ Rentals”代替括號的正則表達式,這也沒有用。 非常感謝您的幫助。 謝謝。

我還沒看過小提琴

jQuery(".menu-name-menu-category-menu ul.nav li > a").html().replace(/\(.*?\)/g,"");

返回一個字符串,必須將其設置回HTML中。

var HTML = jQuery(".menu-name-menu-category-menu ul.nav li > a").html().replace(/\(.*?\)/g,"");
jQuery(".menu-name-menu-category-menu ul.nav li > a").html( HTML );

您正在編輯值,但不對其執行任何操作。 嘗試用另一個html()調用包裝它:

jQuery(document).ready(function () {
    var target =  jQuery(".menu-name-menu-category-menu ul.nav li > a");
    target.html(target.html().replace(/\(.*?\)/g,""));
});

這里工作

jQuery(document).ready(function () { 
    $( ".menu-name-menu-category-menu ul.nav li.expanded > a" ).each(function( index,elem ) {
          $(elem).html($(elem).html().replace(/ *\([^)]*\) */g, ""));
    });

});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM