我可以在ajax javascript中使用数组吗?

时间:2018-05-07 08:39:32

标签: javascript jquery ajax web

我是ajax的新手,我想在ajax中使用数组。

我想要的是:

  1. 从ajax获取数据
  2. 将数据添加到新阵列。这就是全部。
  3. $(document).ready(function () { var main_img = new Array()});

    所以,首先,我制作了一个新阵列,它的效果非常好。

    我为我的ajax制作了settings变量:

      var settings = {
        "async": true,
        "crossDomain": true,
        "url": "http://localhost:52273/movie",
        "method": "GET",
        "headers": {
          "cache-control": "no-cache",
          "postman-token": "b39e3106-5289-f828-261f-132e1aba7bf7"
        }
      }
    

    localhost在节点server.js中运行,我将从html获取数据。

      $.ajax(settings).done(function (response) {
        $('#content > div.article > div > div.lst_wrap > ul > li > div > a > img', response).each(function(index)
        {
          var k = $(this).attr('src');
          var k2 = k.slice(0, k.indexOf('?'));
          var alt = $(this).attr('alt');
    
          main_img[index] = k; // this is not working!!!
        });
      });
    

    设置和ajax在document.ready上运行,

    我在ajax中测试插入值,它运行得很好..

    所以当我在ajax中使用数组时,我觉得有些问题。 请帮帮我......

    我有什么遗漏吗?

1 个答案:

答案 0 :(得分:0)

因为有可能隐藏这个错误,我会做的是:

  1. 创建一个var来存储我认为是图像的类型:let test = typeof(k);
  2. 使用main_img.push(test)作为MysterX刚才说的。
  3. 然后console.log(main_img)
  4. 我希望它有所帮助!

    然后可能是关于范围,让我们试试这个:

    $.ajax(settings).done(function (response) { $('#content > div.article > div > div.lst_wrap > ul > li > div > a > img', response).each(function(index, main_img) { var k = $(this).attr('src'); var k2 = k.slice(0, k.indexOf('?')); var alt = $(this).attr('alt'); main_img[index] = k; // this is not working!!! }); });