0

詳細ビューの aspx ページに送信するための基本的なフォームがあります。

私のテキストエリアには html code が含まれています<br>。挿入を試みるたびに失敗し、ジェネリックを取得します。

サーバーから返されたステータス コードは 500 です

<br>削除すると問題なく挿入されるため、問題はhtmlコードの問題であることを私は知っています。

挿入時に HTML タグを許可するように、このフィールドの templateview の設定はありますか?

任意のポインタをいただければ幸いです!

4

2 に答える 2

0

ページ宣言で、ValidateRequest = "false" ...に注意してください。これにより、XSS、クロスサイトスクリプティングが可能になります。

データベースに送信する前に、テキストエリアからデータをエンコードしていることを確認してください。データを表示に戻すときに、デコードします。

Microsoftから。**出力をエンコードする

ユーザーまたはデータベースなどの他のソースからの入力が含まれている場合は、HttpUtility.HtmlEncodeメソッドを使用して出力をエンコードします。HtmlEncodeは、それらの文字を表すHTMLからHTMLへの変数で特別な意味を持つ文字を置き換えます。たとえば、<は<に置き換えられ、"は"に置き換えられます。エンコードされたデータによって、ブラウザがコードを実行することはありません。代わりに、データは無害なHTMLとしてレンダリングされます。

同様に、HttpUtility.UrlEncodeを使用して、出力URLが入力から構築されている場合はそれらをエンコードします。**

http://msdn.microsoft.com/en-us/library/ff649310.aspx

于 2012-09-27T19:42:40.550 に答える
0

asp.net Web フォーム (Web フォームを想定) のテキスト ボックスに HTML があると、このエラーが発生します。JavaScript でエンコードするか、@Page 属性の ValidateRequest プロパティを false に設定するか、他のユーティリティを使用する必要があります (いくつかありますが、特定のものを知りません。おそらく HTML アジリティ パックですか?)。

于 2012-09-27T14:56:22.840 に答える