Проблема поиска тегов в HTML-кодах, отображаемых с использованием DangerouslySetInnerHtml

Если вам нужен URL-адрес до имени хоста, а не путь, использующий общий доступ Apache StringUtil, а из URL извлекайте подстроку до третьего индексаOF /.

public static String getURL(HttpServletRequest request){
   String fullURL = request.getRequestURL().toString();
   return fullURL.substring(0,StringUtils.ordinalIndexOf(fullURL, "/", 3)); 
}

Пример: Если fullURL - https://example.com/path/after/url/, тогда Выход будет https://example.com

1
задан Tholle 19 March 2019 в 11:00
поделиться

3 ответа

Я попробовал ваш код, и он работает после небольшой модификации. Проверьте ниже. Он перебирает HTMLCollection и печатает H2s

var article = document.getElementsByClassName("article-content");
var h2s = article[0]
  .getElementsByClassName("article-detail")[0]
  .getElementsByClassName("article-content")[0]
  .getElementsByTagName("h2");

for(var i = 0; i < h2s.length; i++){
   console.log(h2s[i]);
}
<div class="article-content">
<div class="article-detail">
  <div class="article-content">
    <h2>H2 1</h2>
    <h2>H2 2</h2>
    <h2>H2 3</h2>
    <h2>H2 4</h2>
    <h2>H2 5</h2>
  </div>
</div>
</div>

0
ответ дан ivp 19 March 2019 в 11:00
поделиться

Я решил проблему. В функции

var detailText = this.props.state.blog.detail;
var parser = new DOMParser();
  var htmlDoc = parser.parseFromString(detailText, "text/html");
  var h2s = htmlDoc.getElementsByTagName("h2");
  let items = [];
  for (var i = 0; i < h2s.length; i++) {
    items.push(h2s[i].innerText);
  }
  return items.map((row, i) => {
    return (
      <li key={i}>
        <a href="#">{row}</a>
      </li>
    );
  });
0
ответ дан Can Kurucu 19 March 2019 в 11:00
поделиться

преобразовать список узлов в массив следующим образом:

  var inputList = Array.prototype.slice.call(h2s);
for(var i = 0; i < inputList .length; i++;){
   // not working
   console.log(h2s[i]);
}
0
ответ дан Aref Zamani 19 March 2019 в 11:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: