0

Rails のテキスト領域に HTML コードを配置すると、html が出力されることに気付きました。

例えば:

<b> Hello </b>

次のように出力します。

こんにちは

Rails 3 のテキスト入力は HTML を自動的にエスケープすると思っていましたが、@variable.textarea を出力すると、太字のテキストが表示されます。入力する HTML を選択していますか? また、テキストエリアのコンテンツを出力するときに、すべての HTML が常にエスケープされるようにするにはどうすればよいですか?

ありがとう!

4

1 に答える 1

1

hello<b>hello</b>として出力される場合、それは HTML エスケープ既に防止されていることを意味します。

ユーザーが入力で HTML を使用できないようにするため、HTML をエスケープ<b>hello</b>して、<b>hello</b>.

Rails 3 アプリでは、html は自動的にエスケープされますが、h メソッドを使用して明示的にエスケープできます。

<%= h my_string %>
于 2013-03-30T23:34:28.473 に答える