将json结果传递给另一个ajax

时间:2015-08-24 11:14:38

标签: javascript jquery

这是继续:Link

我的故事板是这样的。我想自动刷新我的页面。因为我创建了一个实时监控来管理来自用户的请求。当用户创建新评论时,我想创建一个通知。 所以,我选择使用js / jquery。

我非常努力地将其实现为我的ajax响应

% sampling without replacement is default
rand_nums = randsample(block1, 10); 
rand_ind = randperm(20,10); % 10 numbers from 1:20

for n = 1:10

    rand_num = rand_nums(n);
    rand_row = pick_matrix(rand_ind(n),:);
    % whatever you need to do with these things goes here

end

对于第二个数组是这样的:

/* This is function to initialized old comment as return a first */
function initializedFirstComment(handleData) {
    $.ajax({
        url: "<?php echo base_url() . 'control_closing/getKomentarMD/' ?>",
        type: 'POST',
        dataType: 'json',
        success: function(data) {
            handleData(data);
        }
    });

}

所以,在主文档中会是这样的。

/*For the second array */
    function refreshByManager(first) {
    var audioElement = document.getElementById('notif-md');
    audioElement.addEventListener('ended', function() {
        this.currentTime = 0;
        this.play();
    }, false);

    setTimeout(function() {
        $.ajax({
            url: '<?php echo base_url() . 'control_closing/getKomentarMD/' ?>',
            type: 'POST',
            dataType: 'json',
            success: function(second) {
                console.log(first); // For debug first array, and in firebug it success.
                console.log(second);// For debug second array, and in firebug it success.


                var difference = function(list1, list2, id, attr) {
                    var map = {};

                    // Create map.
                    list1.forEach(function(item) {
                        map[item[id]] = item;
                    });

                    // Find diff.
                    return list2.filter(function(item) {
                        var target = map[item[id]];
                        // Return if the item is not exist in first, or the target attr is different.
                        return (typeof target === 'undefined' || item[attr] !== target[attr]);
                    });
                }

                var diffs = difference(first, second, 'id_request', 'comment_bapak');
                console.log(diffs);
                alert(diffs[0].comment_bapak);
                refreshByManager();
            }
        });

    }, 5000);
}

我不明白,为什么输出是这样的:

$(document).ready(function() {
    initializedFirstComment(function(output) {
        refreshByManager(output); // Check it
    })
}

我非常绝望。任何帮助它如此欣赏。

0 个答案:

没有答案