поиск строки в body.html () не работает - PullRequest
1 голос
/ 23 ноября 2011

Привет здесь - моя общая работа по поиску строки в HTML и выделению ее, если она найдена в документе: Проблема здесь

var SearchItems = text.split(/\r\n|\r|\n/);
   var replaced = body.html();
   for(var i=0;i<SearchItems.length;i++)
   {
     var tempRep= '<span class="highlight" style="background-color: yellow">';
     tempRep = tempRep + SearchItems[i];
     tempRep = tempRep + '</span>';
     replaced = replaced.replace(SearchItems[i],tempRep); // It is trying to match along with html tags...
     // As the <b> tags will not be there in search text, it is not matching...
   }
$("body").html(replaced);

HTML-код, который я использую, выглядит следующим образом:

<div>
The clipboardData object is reserved for editing actions performed through the Edit menu, shortcut menus, and shortcut keys. It transfers information using the system clipboard, and retains it until data from the next editing operation replace s it. This form of data transfer is particularly suited to multiple pastes of the same data.
<br><br>
This object is available in script as of <b>Microsoft Internet Explorer 5.</b>
</div>

<div class='b'></div>

Если я ищу страницу, которая является чистой или без каких-либо тегов HTML, она будет соответствовать. Однако, если у меня есть какие-либо теги в HTML, это не будет работать. Потому что я беру текст body html () в качестве целевого текста. Он точно пытается найти соответствие с тегами html ..

В скрипте второй абзац не будет совпадать.

1 Ответ

1 голос
/ 23 ноября 2011

Во-первых, чтобы игнорировать теги HTML элемента, который нужно посмотреть, используйте метод .text().

Во-вторых, в вашей скрипке это не сработало, потому что вы не вызывалиSearchQueue функция под нагрузкой.

Попробуйте эту измененную скрипку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...