按钮发布和取消don';t在Mediawiki'中工作;维基编辑器扩展

按钮发布和取消don';t在Mediawiki'中工作;维基编辑器扩展,mediawiki,Mediawiki,这是一个关于Mediawiki扩展的问题。 我激活了“发布”模块,在右上角显示“发布”和“取消”按钮: $wgDefaultUserOptions['wikieditor-publish'] = 1; $WGDaultUserOptions['wikieditor-publish']=1; 不幸的是,它没有按预期工作:发布按钮不执行任何操作,取消按钮执行发布操作。 我查看了jquery.wikiEditor.publish.js文件,但不太了解发布模块的代码源: context.fn.addBu

这是一个关于Mediawiki扩展的问题。
我激活了“发布”模块,在右上角显示“发布”和“取消”按钮:

$wgDefaultUserOptions['wikieditor-publish'] = 1; $WGDaultUserOptions['wikieditor-publish']=1; 不幸的是,它没有按预期工作:发布按钮不执行任何操作,取消按钮执行发布操作。
我查看了jquery.wikiEditor.publish.js文件,但不太了解发布模块的代码源:

context.fn.addButton( { 'captionMsg': 'wikieditor-publish-button-publish', 'action': function () { $( '#' + dialogID ).dialog( 'open' ); return false; } } ); context.fn.addButton( { 'captionMsg': 'wikieditor-publish-button-cancel', 'action': function () { } } ); context.fn.addButton({ 'captionMsg':'wikieditor发布按钮发布', “操作”:函数(){ $('#'+dialogID).dialog('open'); 返回false; } } ); context.fn.addButton({ 'captionMsg':'wikieditor发布按钮取消', “操作”:函数(){} } );
有人知道它是如何工作的吗?

我在MediaWiki 1.20.0中通过一个快速的破解修复了这个问题,将代码改为:

context.fn.addButton( {
  'captionMsg': 'wikieditor-publish-button-publish',
  'action': function () {
    $( '#' + dialogID ).dialog( 'open' );
  }
} );

context.fn.addButton( {
  'captionMsg': 'wikieditor-publish-button-cancel',
  'action': function () {
    window.location = $("*").find("a[id='mw-editform-cancel']").first().attr("href");
    return false;
  }
} );
这使得这两个按钮都能像我预期的那样工作,并且应该在1.19中也能工作。真正了解jQuery的人可能会做得更好

仅作为记录,要更改的代码位于Mediawiki发行版中以下文件的末尾:

extensions/WikiEditor/modules/jquery.wikiEditor.publish.js

此错误已添加到bugzilla:
并且已经提交了一个修复程序:


所以问题解决了:)

谢谢你的回答,但是你能解释一下你更改的源代码吗?因为我还是不明白原著和你的。