ページにasp.netのdetailsviewコントロールがあります。データベースフィールドの生のテキストが常に表示され、テキスト内のhtmlは解釈されないため、太字のmytextだけでなく<b> mytext</b>が表示されることに気付きました。
とにかく、返されるデータのhtmlを解釈するためのコントロールを取得する方法はありますか
よろしく溶ける
ページにasp.netのdetailsviewコントロールがあります。データベースフィールドの生のテキストが常に表示され、テキスト内のhtmlは解釈されないため、太字のmytextだけでなく<b> mytext</b>が表示されることに気付きました。
とにかく、返されるデータのhtmlを解釈するためのコントロールを取得する方法はありますか
よろしく溶ける
コントロールのコードを投稿できますか? 基本は、HtmlEncode プロパティを false に設定する必要があることです。これは、ラベルとテキストボックスがエンコーディングを処理する方法の違いによるものです。これは、誰かがこれらのフィールドに入力した可能性のある悪意のあるスクリプトからユーザーを保護するためのものです.
フィールドを自動生成するように設定している場合 (デフォルト)、代わりにBoundFieldまたはTemplateFieldに変更し、問題のあるフィールドのHtmlEncode プロパティを false に設定する必要があります。
MSDN で個々のフィールドのコード サンプルを確認できます。簡単な例を次に示します。
<asp:DetailsView runat="server" AutoGenerateRows="False">
<Fields>
<asp:BoundField DataField="ProductName" HeaderText="Product" />
<asp:BoundField DataField="CategoryName" HeaderText="Category" />
<asp:BoundField DataField="HTMLField" HeaderText="HTML" HtmlEncode="false" />
</Fields>
</asp:DetailsView>