Javascript 输入值赢得';t更新
好吧,我一直在努力让这个脚本正常工作,但我就是不知道出了什么问题。 我试图让tinyMCE使用jquery对话框从两个字段中获取输入,并以特定格式输出。以下是我的tinyMCE插件代码:Javascript 输入值赢得';t更新,javascript,ajax,jquery,input,Javascript,Ajax,Jquery,Input,好吧,我一直在努力让这个脚本正常工作,但我就是不知道出了什么问题。 我试图让tinyMCE使用jquery对话框从两个字段中获取输入,并以特定格式输出。以下是我的tinyMCE插件代码: (function() { tinymce.create('tinymce.plugins.RMFtooltip', { init : function(ed, url) { ed.addButton('RMFtooltip', { title : 'ToolTi
(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" );
}
}
});
...
(函数(){
create('tinymce.plugins.RMFtooltip'{
init:函数(ed,url){
ed.addButton('RMFtooltip'{
标题:“工具提示”,
图片:url+'/RMFtooltipbutton.png',
onclick:function(){
i=jQuery(“”);
/*get(url+'/ajax/form.html',函数(数据){
i、 html(数据);
});*/
i、 加载(url+'/ajax/form.html');
i、 对话({
自动打开:对,
可拖动:错误,
可调整大小:false,
莫代尔:是的,
按钮:{
“OK”:函数(){
RMFtooltip_text=jQuery(“#RMFtooltip_text”).val();
RMFtooltip_tip=jQuery(“#RMFtooltip_tip”).val();
如果(RMFtooltip_text!=null&&RMFtooltip_text!=''&&RMFtooltip_tip!=null&&RMFtooltip_tip!=''){
ed.execCommand('mceInsertContent',false',[tooltip-tip=“”+RMFtooltip\u-tip+”]'+RMFtooltip\u-text+“[/tooltip]”);
}
jQuery(this.dialog)(“close”);
},
取消:函数(){
jQuery(this.dialog)(“destroy”);
}
}
});
...
现在,我第一次在tinyMCE中单击按钮时,一切正常,但是如果我再次单击它,无论输入是什么,我都会得到相同的输出。例如:我在文本中输入foo,在提示中输入bar,然后单击ok,一切正常(我得到“[tooltip tip=“bar”]foo[/tooltip]”),然后我再次使用它,这次我在文本中输入blah,在提示中输入blue,但仍然得到相同的输出(“[tooltip tip=“bar”]foo[/tooltip]”)。它似乎没有重新读取输入。。。
请帮忙
PS:我正在使用ajax获取表单(因为这是一个js文件),我可以将它附加到这里,但这似乎对我来说无关紧要。…每次关闭对话框时,您都需要清空它,因为每次调用单击函数时,jQuery都会在幕后创建新的html。您将再也看不到此html,但它在那里,并且正在使用表单ID干扰您的调用元素 要解决此问题,只需在每次调用后清空对话框
//...
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" );
jQuery(this).empty(); //Add this
},
Cancel: function() {
jQuery( this ).dialog( "destroy" );
jQuery(this).empty(); //Add this
}
}
//...
查看您的表单代码会很有帮助