0

単語を入力する Ajaxsearch (Google など) があり、下部にオートコンプリート フォームがあり、一致するキーワードが強調表示されます。問題は、空白も強調表示されている (強力なタグが付けられている) ことであり、これにより空白の幅が増加します。

次の関数を変更する必要がありますが、これが何をするのかわかりません。

highlight: function(value, term) {
    return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");
},
4

1 に答える 1

0

解決済み:末尾の空白が強調表示されないようにトリムを追加しました。

highlight: function(value, term) {
return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + trim(term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1")) + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");

}、

于 2013-03-10T01:58:44.740 に答える