0

実際のasp.netサーバータグ自体にアクセスできないため、StripFormattingOnPasteプロパティをJavaScriptでEditorStripFormattingOptions列挙型に変更する必要がありますが、方法がわかりません。OnClientLoad()そこに追加できるように機能するand関数を追加するコードがいくつかOnClientCommandExecuted()ありますが、プロパティがクライアント側のどこに存在し、列挙値がどうなるかわかりません。

// init OnClientLoad and OnClientCommandExecuted event handlers for all radeditors on the page
Sys.Application.add_load(function() {
    if (typeof ($telerik) != "undefined") {
        if ($telerik.radControls && Telerik.Web.UI.RadEditor) {
            for (var i = 0, l = $telerik.radControls.length; i < l; i++) {
                var control = $telerik.radControls[i];
                if (Telerik.Web.UI.RadEditor.isInstanceOfType(control)) {
                    var editor = control;

                    // ??? editor._stripFormattingOptions = Telerik.Web.UI.StripFormattingOptions.NoneSupressCleanMessage

                    // editor already loaded, fire event
                    OnClientLoad(editor);
                    // attach event handler for paste commands
                    editor.add_commandExecuted(function(ed, args) {
                        return OnClientCommandExecuted(ed, args);
                    });
                }
            }
        }
    }
});

更新:必要な正しい列挙型設定が であることを発見しましたTelerik.Web.UI.StripFormattingOptions.NoneSupressCleanMessage

更新 #2: RadEditor JS オブジェクトに_stripFormattingOptionsプロパティがあることがわかりましたが、それは私的使用のためだけのものかもしれないと思います。

4

1 に答える 1

1

Telerik コントロールは ASP.NET AJAX に基づいており、ほぼ同じコーディング規則を使用します。つまり、パブリック プロパティには getter メソッドと setter メソッドがあります。この場合、使用する必要があります

editor.set_stripFormattingOptions(Telerik.Web.UI.StripFormattingOptions.NoneSupressCleanMessage);

現在の値を取得するには、次を使用します

var value = editor.get_stripFormattingOptions();

見たプロパティ (editor._stripFormattingOptions) は、値を格納するために使用されます。その名前はアンダースコアで始まるため、それがプライベートであると想定するのは正しいため、それに依存するべきではありません. getter メソッドと setter メソッドは公開されており、自由に使用できます。

于 2009-11-27T23:08:42.987 に答える