Search Text in Paragraph using jQuery
The code below highlight the words in the paragraph if it matches on the inputted keywords or text from the user.
- Gets the value from the text box
- Split if the words are separated by space
- Store the values in an array
- Pass those values in the function
- and use RegExp to evaluate
- If found, replaces the text with added span tag for the highlight.
$.fn.wrapInTag = function (opts) { var words = opts.words || [], regex = RegExp(words.join('|'), 'gi'), replacement = '<span class="highlight">$&</span>'; return this.html(function () { return $(this).text().replace(regex, replacement); }); }; $('#terms').keyup(function () { var keywords = []; keywords = $(this).val().split(" "); $('p#text-body').wrapInTag({ words: keywords }); });