使用ajax加载内容后,.empty()函数将无法正常工作

时间:2016-03-09 19:56:29

标签: javascript jquery ajax multi-level

我做了一个多级的ajax调用.i.e。进行ajax调用并使用调用中的id值进行另一次调用...我试着调用jquery .empty()不能用于内部ajax调用中生成的数据...但是当我放置时。外部生成的元素上的empty()函数,它工作得很好......我该如何解决这个问题?这是我的代码../

$(document).on('click', '.stories', function(e) {
    e.preventDefault();

    var request = $.ajax({ //first ajax call///
        url: 'includes/functions.php?job=front_title',
        cache: false,
        dataType: 'json',
        contentType: 'application/json; charset=utf-8',
        type: 'get'
    });

    request.done(function(output) {
        if (output.result === 'success') {
            $('.blog').empty();
            var jsonArray = $(jQuery.parseJSON(JSON.stringify(output.data))).each(function() {
                var id = this.titleID;
                var storyTitle = this.story_view;
                var frontTitle = '<div class="blog-item"><h3>' + storyTitle + '</h3>' + '<img class="img-responsive img-story" src="images/blog/blog1.jpg" width="100%" alt="" />' + '<div class="blog-content"><div class="entry-meta"><h4>Episodes</h4></div>' + '<div class="well" style="padding-right: 10px; padding-left: 5px; width: 105%;">' + '<ul class="tag-cloud stories">';
                var request2 = $.ajax({ ////inner ajax call//////
                    url: 'includes/functions.php?job=story_episodes',
                    cache: false,
                    data: 'id=' + id,
                    dataType: 'json',
                    contentType: 'application/json; charset=utf-8',
                    type: 'get'
                });

                request2.done(function(output2) {
                    var i = 1;
                    if (output2.result === 'success') {
                        var jsonArray2 = $(jQuery.parseJSON(JSON.stringify(output2.data))).each(function() {
                            var id2 = this.id;
                            var title = this.title;
                            var count = this.episode_count;

                            if (count == 0) {
                                frontTitle += id2;
                            } else if (i % 20 == 0) {
                                frontTitle += '<li data-id="' + id2 + '" id="singleEpisode"><a class="btn btn-sm btn-primary" href="#story/' + storyTitle + '/' + title + '">' + i + '</a></li></ul><ul class="tag-cloud">';
                            } else {
                                frontTitle += '<li style="margin: 1px" data-id="' + id2 + '" id="singleEpisode"><a class="btn btn-sm btn-primary" href="#story/' + storyTitle + '/' + title + '">' + i + '</a></li>';
                            }
                            i += 1;
                        })
                    }
                    $('.blog').append(frontTitle);
                    frontTitle += '</ul></div></div>';
                })
            })
        } else {
            console.log('failed');
        }
    });
});

我真的需要这方面的帮助,我已经在这两天了...我真的很感激帮助...或者有更好的方法我可以做到这一点吗?

0 个答案:

没有答案