执行Ajax webmethod后运行tinymce

时间:2015-09-25 06:00:23

标签: javascript ajax tinymce

我有一个Ajax webmethod,它从基页(cs)返回覆盖文化。我想将文化价值用于tinymce"语言"和" directionilty"。换句话说,我希望tinymce等待Ajax方法在页面上启动textarea之前返回文化值。

我将azymce.init置于Ajax成功之中,但这并没有奏效。

所以我的问题是,在tinymce显示页面上的textarea之前,迫使tinmece等待webmethod返回文化值的最佳方法是什么?

以下是从服务器返回覆盖文化的web方法。

var pageLanguage = 'en';
var directionalityVal = 'ltr'

$(document).ready(function () {

$.ajax({
    method: "POST",
    url: "/UserControls/ucFunctions.aspx/pageLanguageStr",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (data) {
        pageLanguage = data.d;
        if (pageLanguage == 'ar') directionalityVal = 'rtl';                        
       }
   }) 
});

这是我的tinymce.init:

tinymce.init({
    language: pageLanguage, //this value depends on the Ajax webmethod
    directionality: directionalityVal, //this value depends on the Ajax webmethod

    formats: {
        underline: { inline: 'u', exact: true }
    },
    height: 500,
    menubar: false,
    toolbar: false,
    theme_advanced_buttons2: "undo,redo",
    encoding: "xml",
    selector: "#blogTextBox, #recipeTextBox, #ingredientsTextBox",
    content_css: "/css/tinymce.css",
    editor_css: "/css/tinymce.css",
    toolbar: 'myToolbar | bold italic underline | bullist numlist | undo redo | link',

    plugins: 'myToolbar wordcount link paste',
    paste_as_text: true,
    setup: function (editor) {
        editor.on('SaveContent', function (ed) {
            ed.content = ed.content.replace(/&#39/g, "&apos");
        });
    },
});

tinymce.PluginManager.add('myToolbar', function (editor, url) {
    editor.addButton('myToolbar',
        {
            title: '',
            image: '/Images/Design/icon-image4.png',
            onclick: function () { openAlbum("text"); }
        });
});

0 个答案:

没有答案