Javascript事件问题

Javascript事件问题,javascript,events,publish-subscribe,Javascript,Events,Publish Subscribe,我正在创建一个链接,当它被单击时会更改文本。我希望链接文本更改回原始文本后,所有的处理完成。它工作得很好,但是代码散布在我的js文件中,所以我试图将其抽象为一个函数。这是函数,文本切换。在textToggle函数中,我们发布了一个事件。这是一个我无法在正确的时间启动的事件 var textToggle = function(data) { var original_text = $(data.element).text(); var id = data.id; var $elemen

我正在创建一个链接,当它被单击时会更改文本。我希望链接文本更改回原始文本后,所有的处理完成。它工作得很好,但是代码散布在我的js文件中,所以我试图将其抽象为一个函数。这是函数,
文本切换
。在textToggle函数中,我们发布了一个事件。这是一个我无法在正确的时间启动的事件

var textToggle = function(data) {
  var original_text = $(data.element).text();
  var id = data.id;
  var $element = $(data.element);
  $element.text(data.replacement_text);
  $('body').on(data.event, function(e) {
    e.preventDefault();
    $this.text(original_text);
  });
};
下面是设置textToggle的函数。在函数结束时,我们将触发另一个事件“clinical.status”

$('#clinicalPatients').on('click', '[data-role="auth-process"]', function(e) {
  e.preventDefault();

  var $this = $(this);
  var _id = $target.attr('id');

  textToggle({
    id: _id,
    element: $this,
    replacement_text: "Processing...",
    event: "clinical.status.finished"
  });

  $('#clinicalPatients').trigger('clinical.status', [{
    id: _id,
    target: $target,
    action: _type
  }]);
});
clinical.status
的末尾,我想在toggleText中触发事件,
clinical.status.finished
。这是该事件的代码

$('body').trigger('clinical.status.finished', [{
  id: originalId
}]);

clinical.status.finished
未在正确的时间触发。在代码中没有其他地方使用它,所以它必须是我设置它的方式。如果我将该事件从
toggleText
函数中退出,并将其放入我设置
toggleText
函数的函数中,那么一切都会正常工作。通过将事件上的
放入一个单独的函数,这将导致问题。请,任何帮助都将不胜感激。谢谢。

你说的
没有在正确的时间触发是什么意思?
很抱歉浪费大家的时间,但是我完成的任务发生得太快了,似乎什么都没有发生。再次感谢。