我的 jquery 调用如下文本框。我想在这个选择器上阻止 ajaxStart()

$("#ddl_select").keyup(function() {
    var searchid = $(this).val();
    var dataString = 'search='+ searchid;

    if(searchid!='') {

       $.ajax({
          type: "POST",
          url: "searchname.php",
          data: dataString,
          cache: false,
          success: function(html) {
              $("#result").html(html).show();
          }
       });
    }
});

我想在上面的选择器中阻止 ajaxStart() 方法。

ajaxStart() 代码如下
jQuery(document).ajaxStart(function () {
    //show ajax indicator
    ajaxindicatorstart();
}).ajaxStop(function () {
    //hide ajax indicator
    ajaxindicatorstop();
});

只阻止 ajaxStart 方法,但整个功能按原样工作。

有谁能够帮我...

最佳答案

我建议将 ajaxindicatorstart();ajaxindicatorstop(); 放在每个单独的 AJAX 请求中,除了您不想启动它的选择器。

例子:

$.ajax({
    type: "POST",
    url: "searchname.php",
    data: dataString,
    cache: false,
    beforeSend: function() {
        // start the indicator right before the AJAX call fires
        ajaxindicatorstart();
    },
    success: function(html)
    {
        // stop the indicator and show the result
        ajaxindicatorstop();
        $("#result").html(html).show();
    }
});

关于jquery - 如何防止特定选择器上的 document.ajaxstart,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30950051/

10-13 00:34