jquery隐藏函数在我调用ajax调用的内部done方法时不起作用

deikduxw  于 2021-09-13  发布在  Java
关注(0)|答案(0)|浏览(90)

在使用ajax调用时,我调用 showMessage()beforeSend 方法 $.ajax 而在 done 方法 $.ajax 我打电话来 hideMessage() .
问题是hidemessage()没有隐藏消息弹出窗口。之后,如果我从控制台执行这个函数,它就工作了。有人能提出这是为什么吗?

$.ajax({
  type: 'GET',
  url: '...',
  dataType: 'json',
  beforeSend: function(x) {
    showMessage('Please Wait');
  }
}).done(function(data) {
  hideMessage();
});

function showMessage(text) {
  var mv = null;
  if ($('#messagePopup').size() == 0) {
    mv = $('<div class="wait_popup" id="messagePopup"><div class="wait_div"><div class="wait_content"><div class="text_content"></div></div></div></div>');
    $('body').append(mv);
  } else {
    mv = $('#messagePopup');
  }
  mv.find('.text_content').html(text);
  mv.fadeIn();
  mv.find('.wait_div').delay(400).show('clip');
}

function hideMessage() {
  $('#messagePopup').hide('clip');
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题