私はこのソリューションをすべて探していますが、答えが見つからないので、最後の希望です。"ソースの表示"モードでhtmlを挿入すると、cleditorで "insertHtmlコマンドを実行中にエラーが発生しました"というメッセージが表示される
cleditorに関して、誰かが "ソースの表示"モードで "inserthtml"コマンドを作成する方法を知っていますか?
現在、私はcleditorのテキストエリアに文字列を挿入し、ボタンのOnClickハンドラに接続する方法があります:上記
editor.focus();
setTimeout(function() { editor.execCommand('inserthtml', stringToInsert); }, 0);
は、通常のリッチテキストモードでは正常に動作しますが、あなたがしながら、それを実行しようとした場合ソースの表示モードでは、次のことが起こります:Firefoxので
- を、それが言う小さなメッセージポップアップする「 inserthtmlコマンドを実行エラー。」 Chromeの場合
- 、それは静かにIEで
- を失敗:
- テキストエリアが空だった場合、私はjqueryのように見えるもので、 "Y(a)の.pasteHTML(C)" でのVisual Studioでブレークポイントにヒット。 cleditor.min.jsを開き、「Microsoft JScript実行時エラー:不明なエラー」というメッセージが表示されます。
- テキストエリアに既にテキストが含まれている場合、同じファイル内の「a.range [0] .select()」のブレークポイントに「Microsoft JScriptランタイムエラー:エラーのために操作を完了できませんでした800a025e。
まず、あなたに感謝します返信のために。それだけが簡単なら!私は以前にその解決策を見つけましたが、それは機能しません。少なくとも私のためではありません。 – lifebmad
私の答えがうまくいけば+1し、誰かがそれを将来使用するかもしれません。 – firegnom
ありがとうございました!私が必要としていた重要な情報は次のとおりです: _通常のモードであなたのテキストエリアは実際にiframeです。ソースモードになっていると、テキストエリアは再びテキストエリアになります_ 誰かがこれに苦労している場合、これが私が解決した方法です: 'editor.focus(); if(!editor.sourceMode()){ setTimeout(function(){editor.execCommand( 'inserthtml'、stringToInsert);}、0); } else { setTimeout(function(){insertAtCursor($( "#myTextArea")。get(0)、stringToInsert);}、0); } ' もちろん、insertAtCursor()メソッドを作成する必要があります。私はフォーマットが乱雑であれば謝罪します。 – lifebmad