2011-05-24 71 views
2

我使用的是TinyMCE,它是jQuery插件。tinymce save_callback每次保存都调用4次

我添加了一个函数中的每个保存按钮被点击时被调用,例如:

$('#my:textarea').tinymce({ 
    save_callback: function() { console.log('saving things!'); } 
}); 

这就是所谓的每个用户点击保存按钮时4倍;我应该把我的回调放在别的地方吗?

回答

6

根据documentation,save_callback被认为已被弃用。它建议你使用新的Event API。

试试这个:

$('#my:textarea').tinymce({ 
    setup : function(ed){ 
     ed.onSaveContent.add(function(ed, o) { 
      // Output the element name 
      console.debug(o.element.nodeName); 
     }); 
    } 
}); 

例从这里抓起:http://tinymce.moxiecode.com/wiki.php/API3:event.tinymce.Editor.onSaveContent

+0

谢谢,我不知道的东西tinyMCE.init也适用于jQuery插件。它现在只被调用两次,有没有办法在点击保存按钮时调用它一次? – 23890123890 2011-05-24 20:41:26

+2

嗯...我从来没有用过jQuery的TinyMCE。 :)我在jsfiddle上设置了一个测试:http://jsfiddle.net/xgPzS/2/它似乎被调用了两次,因为当你按下保存按钮时,它会自动提交底层窗体,这会再次触发保存。我甚至无法停止从jQuery提交。但是,如果你设置'submit_patch:false',它只会调用一次保存(虽然我认为它应该阻止提交,而不会执行)。查看文档页面上的'submit_patch'和'add_form_submit_trigger',看看它是否更有意义:http://tinymce.moxiecode.com/wiki.php/Configuration – DarthJDG 2011-05-24 21:12:00

+0

真棒,谢谢:) – 23890123890 2011-05-24 21:16:46