我有非常简单的代码,我通过jquery进行了部分回发,并且我使用ajaxStart / ajaxStop来完成一些工作。但它不起作用。我只是不明白为什么它不起作用。
这是我的代码

$("#imgHolder").ajaxStart(function () {
 $('div#content').block({
          message: '<table><tr><td><img  src="../images/ajax-loader.gif" border="0"/></td><td><h3>Processing...</h3></td></tr><table>',
        css: { border: '1px solid #a00' }
        });
    $('#imgHolder').empty();
    $("#btnPrint").hide();
    });

  $("#imgHolder").ajaxStop(function () {
  $("#btnPrint").show();
  $('div#content').unblock();
 });



$(document).ready(function () {
 $.ajax({
  type: "POST",
  url: "UPSLabelFormUK.aspx/ProcessInfo",
  data: JSON.stringify(DTO),
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function (data) {
  if (data.d[0].Message == "SUCCESS") {
  //alert(data.d[0].TrackNumber);
  ///alert(data.d[0].LabelImagePath);
  var _images = [data.d[0].LabelImagePath];
  $.each(_images, function (e) {
    $(new Image()).load(function () {
    $('#imgHolder').html("<img src='" + data.d[0].LabelImagePath + "' width='310' height='402' border=0/>");
  }).attr('src', this);
 });
}
 } ,
  error: function (XMLHttpRequest, textStatus, errorThrown) {
  alert(textStatus);
  }
 });
 });


我只是不明白为什么我上面的ajaxstart / ajaxstop无法正常工作。请帮助我了解为什么我的代码有误。

但是当我更改代码时,我的ajaxstart / ajaxstop开始工作了

        $(document).ajaxStart(function () {
            $('div#content').block({
                message: '<table><tr><td><img  src="../images/ajax-loader.gif" border="0"/></td><td><h3>Processing...</h3></td></tr><table>',
                css: { border: '1px solid #a00' }
            });

            $('#imgHolder').empty();
            $("#btnPrint").hide();
        });


        $(document).ajaxStop(function () {
            $("#btnPrint").show();
            $('div#content').unblock();
        });


唯一的变化是$(document).ajaxStop(function () {

$("#imgHolder").ajaxStart(function () {


所以请解释为什么我上面的ajaxStart / ajaxStop代码不起作用。谢谢

最佳答案

考虑到只有在没有其他条件时才调用ajaxStart
  ajax请求正在进行中,如果您想使用它,它将变得毫无用处
  作为AJAX加载程序指示器。


您是否尝试过(告诉我它是否起作用)

jQuery(document).ajaxStart(function(){
alert("it begins");
})

关于javascript - jQuery ajaxStart/ajaxStop无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7596128/

10-09 19:33