简体   繁体   English

在字符'?'之后修剪字符串 getElementsByClassName不起作用

[英]Trim string after character '?' getElementsByClassName not working

Tidying URLs displaying in a dynamically populated list; 整理的URL显示在动态填充的列表中; have managed to remove full domain from beginning but now need to trim all characters after '?' 已经设法从一开始就删除了整个域,但是现在需要修剪'?'之后的所有字符 for all results. 对于所有结果。 getElementsByClassName is not working for me, and I cannot figure out why. getElementsByClassName对我不起作用,我不知道为什么。

CodePen Snippet CodePen片段

Using: 使用:

var oldURL = "some?text";
// var oldURL = document.getElementsByClassName("slimBreadcrumb");
oldURL = oldURL.substring(0, oldURL.indexOf("?"));
document.write(oldURL);

and: 和:

var styleBreadcrumb = document.getElementsByClassName("slimBreadcrumb");
  for (var i = 0; i < styleBreadcrumb.length; i++) {
    var str = styleBreadcrumb[i].innerHTML;
    var text = str
      .replace(/http:|https:/, "")
      .replace(/\/\//g, "")
      .replace("www.google.com/", "")
      .replace(/\//g, " > ")
      .replace(/-/g, " ");
    styleBreadcrumb[i].innerHTML = text;
  }

on: 上:

<div>
  <ul>
    <li>
      <a class="slimBreadcrumb" href="http://www.google.com">http://www.google.com/apples/before?after-asdfstrwggs-adf?fadsfad</a>
    </li>
    <li>
      <a class="slimBreadcrumb" href="#">http://www.google.com/apples/oranges/peaches/pears</a>
    </li>
    <li>
      <a class="slimBreadcrumb" href="#">https://www.google.com/apples/oranges/peaches/pears</a>
    </li>
    <li>
      <a class="slimBreadcrumb" href="#">http://www.google.com/apples/oranges/peaches/pears-watermelons-apricots</a>
    </li>
    <li>
      <a class="slimBreadcrumb" href="#">http://www.google.com/apples/before?after-asdfstrwggs-adf?fadsfad</a>
    </li>
  </ul>
    <script type="text/JavaScript">
    </script>
</div>

Like this? 像这样?

 var styleBreadcrumb = document.getElementsByClassName("slimBreadcrumb"); for (var i = 0; i < styleBreadcrumb.length; i++) { var str = styleBreadcrumb[i].innerText.trim(); var text = str .replace(/http:|https:/, "") .replace(/\\/\\//g, "") .replace("www.google.com/", "") .replace(/\\//g, " > ") .replace(/-/g, " "); text = text.split('?')[0]; styleBreadcrumb[i].innerHTML = text; } 
 <div> <ul> <li> <a class="slimBreadcrumb" href="http://www.google.com">http://www.google.com/apples/before?after-asdfstrwggs-adf?fadsfad</a> </li> <li> <a class="slimBreadcrumb" href="#">http://www.google.com/apples/oranges/peaches/pears</a> </li> <li> <a class="slimBreadcrumb" href="#">https://www.google.com/apples/oranges/peaches/pears</a> </li> <li> <a class="slimBreadcrumb" href="#">http://www.google.com/apples/oranges/peaches/pears-watermelons-apricots</a> </li> <li> <a class="slimBreadcrumb" href="#">http://www.google.com/apples/before?after-asdfstrwggs-adf?fadsfad</a> </li> </ul> </div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM