jquery polling with smart poll plugin

ぃ、小莉子 提交于 2019-12-21 06:01:04

问题


I'm trying for the life of me to get this plugin to work but I'm not understanding the status function so retry is not firing.

$.poll(10000, function(retry){
  $.get('willfail', function(response, status){
    if (status == 'success') {
      // Do something
      alert("YES");
    } else {
      alert("NO");
      //retry();
    }
  })
})

If I set the get request to '/' it will give me the alert YES message, but as it is, the alert No message never gets fired despite the ELSE.

I'm using a jquery polling plugin:

https://github.com/jeremyw/jquery-smart-poll

Any ideas?


回答1:


That is probably a bad example. The callback passed to $.get will only be fired if the request succeeded. Try this:

$.poll(10000, function(retry){
  $.ajax({
      url:'willfail',
      success: function(){
          // Do something
          alert("YES");
      },
      error: function() {
          alert("NO");
          retry();
      }
  });
});

For more information, have a look at $.ajax.




回答2:


You can also use Smartupdater - jQuery plugin

http://www.eslinstructor.net/smartupdater/

which let you:

  • Stop/Restart polling
  • Change polling timeout dynamically
  • Switch polling URL dynamically
  • Switch callback function dynamically
  • Remotely set polling timeout
  • Remotely select callback function


来源:https://stackoverflow.com/questions/5665434/jquery-polling-with-smart-poll-plugin

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!