2011-07-11 9 views
0

私は、ASP.NETを使用してテキストボックス(複数行)にテキストを表示しようとしました。しかし、複数行テキストボックス(textarea)がHTMLエンコードされていることがわかりました。表示するときは、次のようになります。ASP.NetでテキストボックスのHTMLエンコーディングを無効にするにはどうすればよいですか?

a> = b; & C

それは自動的に変換されます:

& GT; = Bと、 & amp; c

これは、読者には自然ではありません。ですから、この自動HTMLエンコードの動作を無効にして、テキストボックスに自然に表示する方法はありますか?

+0

は、エラーを再現することはできません。テキストが表示されると、それは正常に表示されます。出力HTMLのみがエンコードされます。実際にエンコードされたテキストが表示されていますか? – keyboardP

答えて

2

は正しいです:.aspxのは技術的にはXMLである、それは>としてエンコードされ>を意味し、有効なXMLなどに準拠しているので、 。

あなたはコードビハインドにテキストを設定している場合は、(例えば、textBox.Text = "")あなたの代わりにHtmlControlsテキスト領域を使用することができます。

System.Web.UI.HtmlControls.HtmlTextArea textBox = new System.Web.UI.HtmlControls.HtmlTextArea(); 
textBox.Value = "a >= b; & c"; 
+0

はいコードビハインドでテキストを設定しています。そして、私の問題を解決したHtmlControlsテキストエリアを使用!ありがとうジャスティン! – Ida

1

私が理解する限り、あなたはaspxマークのテキストについて話していますよね?もしそうなら、心配する必要はありません。クライアント側のエディタには、必要なテキスト、つまり

a> = bが表示されます。 &あなたが言ったことをプラトンその後、マークアップ(.aspxの)、にテキストを設定している場合は、C

関連する問題