2

わかりました、このスクリプトを機能させようとしていますが、何が問題なのかわかりません。jqueryダイアログを使用してtinyMCEに2つのフィールドから入力を取得させ、特定の形式で出力させようとしています。ここに私のtinyMCEプラグインコードがあります:

(function() {
tinymce.create('tinymce.plugins.RMFtooltip', {
    init : function(ed, url) {
        ed.addButton('RMFtooltip', {
            title : 'ToolTip',
            image : url+'/RMFtooltipbutton.png',
            onclick : function() {
                i = jQuery('<div title="Create your tooltip" ></div>');
               /*jQuery.get(url+'/ajax/form.html', function(data) {
                  i.html(data);
                });*/
                i.load(url+'/ajax/form.html');
                i.dialog({
                    autoOpen: true,
                    draggable: false,
                    resizable: false,
                    modal: true,
                    buttons: {
                        "OK": function() {
                            RMFtooltip_text = jQuery("#RMFtooltip_text").val();
                            RMFtooltip_tip = jQuery("#RMFtooltip_tip").val();
                            if (RMFtooltip_text != null && RMFtooltip_text != '' && RMFtooltip_tip != null && RMFtooltip_tip != ''){
                                ed.execCommand('mceInsertContent', false, '[tooltip tip="'+RMFtooltip_tip+'"]'+RMFtooltip_text+'[/tooltip]');
                            }
                            jQuery( this ).dialog( "close" );
                        },
                        Cancel: function() {
                            jQuery( this ).dialog( "destroy" );
                        }
                    }
                });
...

ここで、tinyMCE のボタンを初めてクリックするとすべて正常に動作しますが、もう一度クリックすると、入力が何であっても同じ出力が得られます。例: テキストに foo と入力し、ヒントに bar と入力して [OK] をクリックすると、すべて正常に動作します ("[tooltip tip="bar"]foo[/tooltip]" が表示されます)。その後、もう一度使用します。今回は入力します。テキストは何とか、ヒントは青ですが、同じ出力が得られます ("[tooltip tip="bar"]foo[/tooltip]")。入力を読み直していないようです...助けてください


PS: フォームを取得するために ajax を使用しています (これは js ファイルであるため)。

4

1 に答える 1