2010-12-21 3 views
3

私はTinyMCEをで使用しています。詳細は編集モードにあります。詳細TinyMCEの表示と統合<%@ Page validateRequest = "false"%>

私は自分のページに<%@ Page validateRequest="false" %>を使用しないでエラー

をトリガするために要求の検証を防ぐことができます解決策があるかどうかを知りたいです。

私は現時点で分かった唯一の方法は、オプションを使用してのTinyMCEが使用するテキストボックスを符号化することである:「XML」

tinyMCE.init({ 
     encoding: "xml", 

要求の検証がエラーをトリガしませんが、時間のデータを読み出す場合に、このようにしてTextBoxにエンコードされた結果。 また、私はこのコード

myTextBox.Text = HttpUtility.HtmlDecode(myTextBox.Text) 

を使用してPageLoad上のTextBoxの内容をデコードしようとしましたが、期待通りの結果ではありませんので、私はちょうどエンコードされたテキスト、それを視覚化することができます。

すべてのアイデア?おかげ

UPDATE


は、私は私の問題への解決策を見つけました。 私はデータバインドイベント、(裏にもポストに動作するはずです)上のコンテンツは、テキストボックスのTinyMCEのためdecodeneされたDetailsViewのため_DataBoundイベントにこのコード

 TextBox myContentAuthor = (TextBox)uxAuthorListDetailsView.FindControl("uxContentAuthorInput"); 
     myContentAuthor.Text = HttpUtility.HtmlDecode(myContentAuthor.Text); 

を追加しました。

動作するはずですどのようにここで

01 - 機能のエンコーディングを使用してテキストボックスに挿入されたTinyMCEのエスケープデータ: "XML"、

02 - データをエスケープ

03として記憶されていた - 読むにはTinyMCEをDetailViewとHttpUtility.HtmlDecodeのためにDATABOUND EVENTで使用するTextBoxに追加します(したがって、デコードされたように見えます)。

04 - 編集モードでテキストボックス内のコンテンツを変更できます。ポストバックでTinyMCEは再びエンコードを使用してエンコードされます: "xml"と同様に

希望者は他の人を助けることができます。

しかし、このソリューションに感謝してください!あなたはよりエレガントなソリューションを考え出す! :-)

+0

ここで私の答えを見るhttp://stackoverflow.com/a/34100978/1201322 – Ravimallya

答えて

0

私は個人的には、このページのリクエスト確認をオフにするだけです。あなたは、クロスサイトリクエストなどでforsee問題がない限り

は、また、ページのポストバック前のデータからHTMLタグを取り除くことによって行うことができ、その前提と「保護」

+0

こんにちは、ご意見ありがとうございます。しかし、私はDBに書いて、要求に応じてそれをデコードするときに、すべてのデータをエンコードする必要があります。だから私の場合、私はTextBoxでデコードする必要があります。 Request ValidationこのページのOFFは、アプリケーションとアプリケーション用のWeb.Configの設定を変更することを意味します。これにより、セキュリティ上のリスクが発生する可能性があります。ありがとうございましたら – GibboK

0

この下に避難する必要はありません。

+0

例を投稿してください – GibboK

0

問題は次のとおりです。
PostBackが到着したとき、TinyMCEはテキストエリアの内容を再エンコードします。それはポストバックかどう この問題を解決するには、解決策が説明よりも簡単です... Page_Load

、あなたがテストする必要があります - >あなたはmyTextBox.TextHttpUtility.HtmlDecode(myTextBox.Text)によって

を置き換える私がしようと、それが仕事です...

関連する問題