Solr の強調表示について質問があります。
メソッド「setHighlightSimplePre」および「setHighlightSimplePost」で強調表示機能を使用し、何らかの html タグを設定すると、html タグで囲まれた強調表示された用語が取得されます。
たとえば、「test」でクエリを実行し、setHighlightSimplePre の引数として「<b>」を設定し、setHighlightSimplePost の引数として「</b>」を設定すると、「<b>test</b>」が次のように取得されます。少なくともフィールドの値が「test」である限り、文字列形式。
ここにあることがあります。フィールドに「testA <b>testB test」のような値がある場合、「testA <b>testB <b>test</b>」となります。つまり、「testA testB <b> 」と表示されます。
どうすればこの問題を解決できますか? つまり、この例では「testA <b>testB test」のように結果を出力したいのです。
強調表示する前に html タグを認識する方法はありますか?
1 に答える
0
強調表示する前に、コンテンツから html を取り除くことができます。
または、 <b> の代わりにハイライター クラスを使用できます。
setHighlightSimplePre('<span class="hilite">');
setHighlightSimplePost('</span>');
次に、周囲のコンテンツのスタイルをオーバーライドします。
div.content b {font-weight: normal;}
強調表示されたテキストのスタイルを設定します。
.hilite {font-weight: bold; color: yellow;}
于 2012-10-11T03:13:06.597 に答える