如何同时替换 <br></br> 和删除 href 属性?

How I do replace <br></br> and remove href attribute at the same time?

我正在使用 WHMCS(拥有许可但没有品牌),但是我想稍微更改一下布局。我要更改的部分是 IONcube 编码的,所以我必须依靠 Javascript(甚至 DOM?)来进行这些更改。

ID名称是:ClientAreaHomePagePanels-Active_Products_Services-0 它的范围从 0 到客户拥有的产品数量。

从那个 ID 我想将显示的 <br></br> 更改为 {$LANG.gekoppeldaan}

其次;我还想从同一个 ID 中删除 href 标签,因为我们不使用它指向的那些页面。

我已经通过使用

替换 <br></br> 取得了一些成功
<script>
$(function() {
   $('#ClientAreaHomePagePanels-Active_Products_Services-0 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-1 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-2 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-3 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-4 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-5 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-6 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-7 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-8 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-9 br').replaceWith(' {$LANG.gekoppeldaan} ');
   $('#ClientAreaHomePagePanels-Active_Products_Services-10 br').replaceWith(' {$LANG.gekoppeldaan} ');
});
</script>

我有点怀疑这是一个 "clean" 的方法,如果客户有超过 100 种产品,我必须创建其中的 100 行。这不是很干净。

我还没有尝试删除 href 标签,只是因为我不知道如何。

所以我的问题是,有人可以提供某种干净的代码来替换所有

<br></br>

{$LANG.gekoppeldaan} 为所有当前和即将到来的 ID 调用 ClientAreaHomePagePanels-Active_Products_Services-0,同时从中删除 href tag/url。

如上所述,客户每拥有一个产品,ID ClientAreaHomePagePanels-Active_Products_Services-0 就会增加一个。所以不是手动添加这些,必须有一种自动的方式,对吧?也许通过 javascript and/or DOM.

希望我说得足够清楚了。

//更新

多亏了 Andreas(评论)和 Axel,我才让它运行起来!非常感谢。

我用过这个:

<script>
$('[id^="ClientAreaHomePagePanels-Active_Products_Services-"] br').replaceWith(" {$LANG.gekoppeldaan} ");
$('[id^="ClientAreaHomePagePanels-Active_Products_Services-"]').removeAttr('href');
</script>

向所有这些条目添加一个额外的空 class:

<... id="ClientAreaHomePagePanels-Active_Products_Services-0" 
           class="ClientAreaHomePagePanels-Active_Products_Services" .... />

使用 jQuery 每个迭代器:

$('.ClientAreaHomePagePanels-Active_Products_Services br').each(function(index, elem) {

      $(elem).replaceWith(' {$LANG.gekoppeldaan} ');
      $(elem).removeAttr('href');

};

注意 .Client... 选择器,它会找到 class 的所有元素,无论有多少

我想你有锚..

$( "a[id*='ClientAreaHomePagePanels-Active_Products_Services-']" ).each( function( index, element ){
    $(element).prepend(' {$LANG.gekoppeldaan} ');
    var kiddos = $(element).children("br");
    if (kiddos != undefined)
      {
          kiddos[0].remove();
          if (kiddos.length > 1)
          kiddos[1].remove();
       }
    $(element).removeAttr('href');
    
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
    <a id="ClientAreaHomePagePanels-Active_Products_Services-1" href="#">
        <br>
        </br>
        <img src="http://t2.gstatic.com/images?q=tbn:ANd9GcQhud2eyWOjWo44aQhYedOM7GCl4rUbNxx_UpGtb2x_t04DU9qI" width=650px" />
    </a>
    <a id="ClientAreaHomePagePanels-Active_Products_Services-2"  href="#">
        <br>
        </br>
         <img src="http://t2.gstatic.com/images?q=tbn:ANd9GcQhud2eyWOjWo44aQhYedOM7GCl4rUbNxx_UpGtb2x_t04DU9qI" width=650px" />
    </a>
    <a id="ClientAreaHomePagePanels-Active_Products_Services-3"  href="#">
        </br>
        <br>
          <img src="http://t2.gstatic.com/images?q=tbn:ANd9GcQhud2eyWOjWo44aQhYedOM7GCl4rUbNxx_UpGtb2x_t04DU9qI" width=650px" />
    </a>

添加更多细节,如果你使用下划线或一些依赖注入,你会遇到一些问题。