0

ASP.NET AJAX コントロール ツールキットの HTMLEditor コントロールを使用しています。正常に動作します。キーアップ (onkeyup) イベントをフックして、エディターで文字数の (おおよその) 実行中のカウントを表示するようなことができるようにしたいと思います。

エディターは最終的に iframe 要素内の textarea 要素であると推測しました。次のような構文を使用して、イベントをテキストエリアに添付できます。

$addHandler($get("Editor1_ctl02_ctl01"), "keyup", displayCharCount);

この行はエラーなしで実行されます。ただし、参照されるメソッド (displayCharCount) は呼び出されません。これがiframeにあるテキストエリアの機能なのか、それともコントロールがすでにイベントを食べているのか、それとも何なのかはわかりません。

FWIW、これは通常の textarea 要素を使用する単純なページで期待どおりに機能します。

何か案は?

4

1 に答える 1

0

textareaはありますが、非表示になっています。したがって、イベントハンドラーは登録されている可能性がありますが、「keyup」が非表示のコントロールで起動することはありません。onchangeやontextchange(またはその呼び出し)などの別のイベントを試してみることをお勧めします。

表示されるエディターウィンドウは、実際にはiframe自体のhtmlドキュメントです。HTMLドキュメントは「編集モード」になっているため、テキストエリアに似ています。非表示のテキストエリアは、htmlマークアップを保持するための巧妙な場所として使用されるだけなので、フォームが送信されると、htmlマークアップがサーバーに送信されます。

それはすべてを機能させるためのトリッキーな方法です...しかしそれは機能します!

于 2009-08-06T19:21:22.867 に答える