突出显示搜索关键字结果

时间:2014-02-10 08:12:04

标签: javascript search highlight keyword

我在我的表格中使用以下搜索功能。我需要突出显示与表格中搜索输入中的关键字匹配的任何结果。我不知道如何添加脚本。请帮助我,因为我是Jscripting的新手并且还在学习。

window.tableSearch = {};

tableSearch.init = function () {
  this.Rows = document.getElementById('data').getElementsByTagName('TR');
  this.RowsLength = tableSearch.Rows.length;
  this.RowsText = [];
  for (var i = 0; i < tableSearch.RowsLength; i++) {
    this.RowsText[i] = (tableSearch.Rows[i].innerText) ? tableSearch.Rows[i].innerText.toUpperCase() : tableSearch.Rows[i].textContent.toUpperCase();
  }
}

tableSearch.runSearch = function () {
  this.Term = document.getElementById('textBoxSearch').value.toUpperCase();
  for (var i = 0, row; row = this.Rows[i], rowText = this.RowsText[i]; i++) {
    row.style.display = ((rowText.indexOf(this.Term) != -1) || this.Term === '') ? '' : 'none';
  }
}

tableSearch.search = function (e) {
  var keycode;
  if (window.event) {
    keycode = window.event.keyCode;
  } else if (e) {
    keycode = e.which;
  } else {
    return false;
  }
  if (keycode == 13) {
    tableSearch.runSearch();
  } else {
    return false;
  }
}

1 个答案:

答案 0 :(得分:0)

this帖子中的人使用jQuery pluging突出显示搜索字符串。

var words = "keyword1,keyword2,keyword3";
var keywords = words.split(',');
for(var i = 0; i < keywords.length; i++) {
    $(selector).highlight($.trim(keywords[i]));
}

您可以在代码中实现这一点吗?