Добавление в .data с использованием JavaScript - PullRequest
1 голос
/ 20 марта 2012

Из всех ответов, которые мне дали, я решил использовать переменную ссылки на объект, так как мне нужно .data, чтобы иметь то же имя.Однако я не уверен, правильно ли я использую переменную.Я думаю, мне просто нужно сделать следующее:

                      var myData = [];


                    $.ajax({
                            url: url,
                            dataType: "json",
                            cache: true,
                            success: function(data) {           
                            $.each(data, function(i, item){
                      myData.push(item);

                      });
                       alert(myData);  

К сожалению, он все еще не работает правильно.

, когда я вызываю функцию onload, я получаю следующий вывод из предупреждения 10 "[объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта] "

когда я вызываю функцию во второй раз, чтобы получить следующие 10, у меня должно быть 20 объектов в файле, но вместо этого у меня есть только 10 "объект объекта], [объект объекта], [объект объекта], [объект Object], [объект Object], [объект Object], [объект Object], [объект Object], [объект Object], [объект Object] "

ОРИГИНАЛЬНАЯ ПОЧТА НИЖЕ

Хорошодень,

Я пытаюсь добавить некоторые результаты вызова Ajax.В настоящее время JSON дает мне 10 предметов.Когда я снова вызываю свою функцию загрузки, мне нужны еще 10, но я хочу добавить их к объекту .data, чтобы я получил 20, затем, когда он загружается снова 30 и т. Д.
Возможно ли это сделать?

Первый звонок возвращает мне 10 результатов.Это:

$.ajax({
    url: url,
    dataType: "json",
    cache: true,
    success: function(data) {           

    }
});

Я установил следующие условия для второго вызова.

if(data ===! null || data ===! 0 || data ===! ""){          
    $.each(data, function(i, item){
        data.push(item.text);
    });

Второй вызов вообще не добавляет данных.Я не уверен, что я должен делать.Я читал из других вопросов, что данные - это объект, который содержит массив.Почему я не могу просто добавить еще 10 к массиву?Любая помощь приветствуется.

Спасибо

1 Ответ

1 голос
/ 20 марта 2012

Вам необходимо создать объект для хранения данных. data, который вы получаете каждый раз, не является тем же объектом, поэтому вы не видите дополнений. То, что вы можете рассмотреть, имеет только одну функцию, и она ведет себя так:

myData = [];

$.ajax({
    url: url,
    dataType: "json",
    cache: true,
    success: function(data) {           
        $.each(data, function(i, item) {
            myData.push(item.text);
        });
    }
});
...