相关疑难解决方法(0)

codemirror:在没有对话框的情况下搜索和突出显示多个单词

目标: 我使用codemirror作为编辑器。我想要

  1. 搜索并突出显示多个字符串
  2. 我希望能够迭代找到的每个匹配项并打印其行号。
  3. 我想以编程方式进行操作,并且不想像示例中那样使用对话框https://codemirror.net/demo/search.html

问题:

  1. 在 while 循环期间只选择最后一个匹配项,清除以前的匹配项,但我也希望它像https://codemirror.net/demo/search.html一样突出显示为黄色

JSFIDDLE: https ://jsfiddle.net/bababalcksheep/p7xg1utn/30/

代码:

$(document).ready(function() {
  //
  var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
    mode: "text/html",
    lineNumbers: true,
  });
  //
  function search(val) {
    var cursor = editor.getSearchCursor(val);
    while (cursor.findNext()) {
      editor.setSelection(cursor.from(), cursor.to());
        console.log('found at line ', cursor.pos.from.line + 1);
    }
  }
  //
  $('#search').click(function(event) {
    event.preventDefault();
    search(/^alpha|^beta/);
  });

  //
});
Run Code Online (Sandbox Code Playgroud)

javascript codemirror

3
推荐指数
1
解决办法
2063
查看次数

标签 统计

codemirror ×1

javascript ×1