如何在条件后重复ajax请求

时间:2018-05-20 22:14:11

标签: php jquery ajax

大家好我想做一件事:从后端我收到一个号码,如果它等于一个我想做一个条件,如果它等于2我想重复ajax ,直到条件等于一,有人可以解释我该怎么做? :)这是代码:

 <script type="text/javascript">
        $(document).ready(function() {
          $(".match").click(function(){
            $.ajax({
            url: 'includes/matchmaking.php',
            success: function (data) {
              alert("Isejo" + data);
              //if data is equal to 1 do this 
              //if data is equal to 2 repeat ajax request
            }
            });
          });
        });
        </script>

P.S。我正在使用php从后端获取数据 提前谢谢你:)

2 个答案:

答案 0 :(得分:1)

&#13;
&#13;
function getData(){
  $.ajax({
    url: 'https://jsonplaceholder.typicode.com/posts/1',
    success: function(data) {
      console.log(data)
      if(data.id === 1){
        console.log('is equal to 1 do this')
      }  
      if(data.id === 2){
        console.log('call getData again')
      getData()
      }
    }
  })
}

getData()
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

在函数中包装ajax并在适当的条件下从内部调用它。

它可以产生无限循环,但我确定你知道那个

答案 1 :(得分:1)

您可以执行jQuery触发器来重复ajax请求。

$(document).ready(function() {
  var oncourse = false;
  $(".match").click(function() { // can be changed to id selection - $('#match')
    if (oncourse == true) return;
    oncourse = true;
    $.ajax({
      url: 'includes/matchmaking.php',
      success: function(data) {
        if (data == '1') {
          // do something
          oncourse = false;
        } else if (data == "2") {
         // do something
          oncourse = false;
          $('.match').trigger('click');
        }
      }
    });
  });
});