如何使用JavaScript设置Telerik RadEditor的StripFormattingOnPaste属性?

时间:2009-11-20 19:28:34

标签: asp.net javascript telerik sitefinity radeditor

我无法访问实际的asp.net服务器标签本身,因此我需要使用JavaScript将StripFormattingOnPaste property更改为EditorStripFormattingOptions enum,我不知道如何操作。我有一些代码添加OnClientLoad()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属性,但我认为它可能仅供私人使用。

1 个答案:

答案 0 :(得分:1)

Telerik控件基于ASP.NET AJAX并使用几乎相同的编码约定 - 公共属性具有getter和setter方法。在这种情况下,您应该使用

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

要获取当前值,请使用

var value = editor.get_stripFormattingOptions();

您看到的属性(editor._stripFormattingOptions)仅用于存储值。由于它的名字以下划线开头,因此您可以认为它是私有的,因此您不应该依赖它。 getter和setter方法是公共的,您可以自由使用它们。