Как установить свойство StripFormattingOnPaste в Telerik RadEditor с помощью JavaScript?

У меня нет доступа к самому тегу сервера asp.net, поэтому мне нужно изменить StripFormattingOnPaste свойство в EditorStripFormattingOptions enum с помощью JavaScript, но я не знаю, как это сделать. У меня есть код, который добавляет функции 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: я вижу, что JS-объект RadEditor имеет свойство _stripFormattingOptions, но я думаю, что оно может быть предназначено только для частного использования.


person travis    schedule 20.11.2009    source источник


Ответы (1)


Элементы управления Telerik основаны на ASP.NET AJAX и используют почти те же соглашения о кодировании — общедоступные свойства имеют методы получения и установки. В этом случае вы должны использовать

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

Чтобы получить текущее значение, используйте

var value = editor.get_stripFormattingOptions();

Свойство, которое вы видели (editor._stripFormattingOptions), просто используется для хранения значения. Поскольку его имя начинается с подчеркивания, вы правильно предполагаете, что оно является частным, и поэтому вам не следует на него полагаться. Методы получения и установки являются общедоступными, и вы можете их использовать.

person lingvomir    schedule 27.11.2009