0

我正在构建一个在其中加载内容的页面。

该页面称为 /ajax ,在这里我有一组数据被拉入,我基本上将其用作 url 来获取数据,以便从我使用的 instagram php 库将更多图像加载到容器中。

当我按下“加载更多”时,它会认为并在控制台的“网络”选项卡中看到:

试图获取非对象的属性

对我来说,这里的困惑是当我访问 url /ajax 时,我在页面中得到了这个,其中包含正确的数据:

"data_text":"Philips #outfitgrid #barbour"在项目数组中,所以它显然在那里并且可以访问,但是由于某种原因,当 url 被传递时/ajax?tag=folkclothing&max_tag_id=1377007699427&_=1377709072077它会爆炸?

这是我的 ajax 数组的 php:

  $images = array();
  $data_link = array();
  $data_id = array();
  $data_likes = array();
  $data_text = array();
  foreach ($media as $data) {
    $images[] = array(

        "data_url"=>$data->images->standard_resolution->url,
        "data_link"=>$data->link,
        "data_text"=>$data->caption->text,
        //"data_text" => array['$data->caption->text'],
        "data_id"=>$data->getId(),
        "data_likes"=>$data->likes->count,
        "data_like"=>$current_user->likes($data),
        "data_token"=>$token

    );
  }
  $object = (object)$data_text;
  echo json_encode(array(
    'next_id' => $media->getNextMaxTagId(),
    'images'  => $images,
    'data_text' => $data_text
  ));

然后我有 ajax 将这些数据放入页面:

$.ajax({
          type: 'GET',
          url: '/ajax',
          data: {
            tag: tag,
            max_tag_id: maxid
          },
          dataType: 'json',
          cache: false,
          complete: function(){
          },
          success: function(data) {
            // Output data
            $.each(data.images, function(i, src) {
            var $content = $('<article class="instagram-image"><form id="'+ data.images[i].data_token +'" class="forms status-'+ data.images[i].data_like +'" action="'+base+'" method="post"><a class="fancybox" rel="folk-1" href="' + data.images[i].data_url + '"><img alt="' + data.images[i].data_text + '" src="' + data.images[i].data_url + '" alt="' + data.images[i].data_text + '" /></a><div class="formSubmit-feedback"></div><input type="hidden" name="id" value="'+ data.images[i].data_id +'"><p>'+ data.images[i].data_likes +'</p></form></article>');
                var duration = 1000, n = 0.1;
              $content.appendTo('section#images');
              $item = $content.find('form');
              if( $item.hasClass("status-false") ){
                    $item.addClass("notLiked");
                    //$('.notLiked').find('button.unlike').hide();
                    $item.find('a').after('<button class="ajax instabtn button-like like icon-heart" type="submit" name="action" value="Like"></button>');
                }
                if( $item.hasClass("status-true") ){
                    $item.addClass("Liked");
                    //$('.Liked').find('button.like').hide();
                    $item.find('a').after('<button class="ajax instabtn button-unlike unlike icon-heart" type="submit" name="action" value="Unlike"></button>');
                }
              });
            // Store new maxid
            $('#more').data('maxid', data.next_id);
          }

任何人都可以解释为什么这可能会在我的问题中引发错误。我已经尝试了很多解决方案,但我很难看到解决方案是什么。

4

0 回答 0