2017-11-07 10 views
1

Railsでは、テキスト内のいくつかのキーワードを強調表示するのは簡単です。highlight()ビューヘルパーを使用してください。ただし、テキストにいくつかのリンクが含まれている場合は、問題あり、ハイライト表示後にリンクが閉じられます。テキストにハイライトのリンクが含まれていることをどのように強調しますか?

例:

pry(main)> text = "stackoverflow is awesome" 
=> "stackoverflow is awesome" 
pry(main)> helper.highlight(text, ['over', 'awe']) 
=> "stack<mark>over</mark>flow is <mark>awe</mark>some" 

これは私が欲しいものです。

[20] pry(main)> text = "<p><a href=\"https://www.google.com\">google</a></p>" 
=> "<p><a href=\"https://www.google.com\">google</a></p>" 
[21] pry(main)> helper.highlight(text, 'goo') 
=> "<p><mark>goo</mark>gle</p>" 

その後<a>タグがなくなっている:

しかし、テキストにリンクが含まれている場合

。私が手に入れたい "<p><a href="https://www.google.com"><mark>goo</mark>gle</a></p>"

ハイライト表示のときに<a>タグを保持するにはどうすればよいですか?

答えて

1

helper.highlight(text, ['over', 'awe'], sanitize: false)を試してみてください。

+0

ちょうど私のために働いて、本当に感謝します! –

関連する問題