1

我有一个运行正常的 JQM 应用程序。我的 JSON 结果是正确的,但我不确定如何在第一次收到数据后停止额外的 AJAX 请求。我假设它链接到我的 pageshow 事件和 jQuery.map() 函数,但不知道如何解决这个问题。

var articles_data;

function showArticles(qandaarticles){
$(document).on('pageshow', '#qanda_articles', function() {
$ajaxphp.postData('getArticlesList', {id : qandaarticles}, getArticlesResponse);

   });
}

//AJAX function - 

function AJXPHP(feeder_url){

 //this.feederurl;

 feeder_url += 'services/feeder2.php';
 //this.feeder_url = 

 this.postData = function(func, data, callback){

    $.mobile.showPageLoadingMsg();

    if (data == null) data = new Object();
    data.func = func;

    $.ajax({
        type: "POST",
        dataType : "json",
        url: feeder_url,
        data: data,
        success: function(DATA)
        {

            callback(DATA);
        }
    });

    $.mobile.hidePageLoadingMsg();
  }
  }
//Click function

$(document).on("click",".articleLink",function () {
var article = $(this).attr('data-id').substr(4);
showArticle(article);
//alert(article);
});


function showArticle(article){
$(document).on('pageshow', '#qanda_entry', function() {
$('#qanda_text div').empty();
    jQuery.map(articles_data, function(obj) {
    if(obj.id === article){

        $('#qanda_text').html('<h2>'+ obj.title + '</h2>' +
                '<p>' + obj.introtext + '</p>');
 }
  });

});
}
4

0 回答 0