Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当我使用数据类型json时,它显示我的ajax脚本中缺少elment]_Javascript_Jquery_Json_Ajax_Codeigniter - Fatal编程技术网

Javascript 当我使用数据类型json时,它显示我的ajax脚本中缺少elment]

Javascript 当我使用数据类型json时,它显示我的ajax脚本中缺少elment],javascript,jquery,json,ajax,codeigniter,Javascript,Jquery,Json,Ajax,Codeigniter,试图使用datatype json获取json格式的值,但当我将其添加到脚本中时,它显示错误,elemet]缺失,我做错了什么 $(document).ready(function(){ $(window).scroll(function(){ var lastID = $('.load-more').attr('lastID'); if ($(window).scrollTop() == $(document).height() - $(wi

试图使用datatype json获取json格式的值,但当我将其添加到脚本中时,它显示错误,elemet]缺失,我做错了什么

    $(document).ready(function(){
    $(window).scroll(function(){

        var lastID = $('.load-more').attr('lastID');

        if ($(window).scrollTop() == $(document).height() - $(window).height() && lastID != 0){
            $.ajax({
                type:'POST',

                url:'<?php echo base_url("user/get_all_post"); ?>',
                data:"id="+lastID,
                dataType:'json',

                beforeSend:function(html){
                    $('.load-more').show();
                },
                success:function(html){

                 //alert(html);
                 var ParsedObject = JSON.stringify(html);            
              var json = $.parseJSON(ParsedObject);
              //alert(json);
            /*
              var json =" [{'id':1,'name':'Test1'},{'id':2,'name':'Test2'}]";
              var jsonArray = eval('(' + json + ')');
            for (i in jsonArray)
            {
             alert(jsonArray[i]["name"]);
            }
            */
             // alert(json.id);
              var jsonArray = eval('(' + json + ')');

             $PostId=jsonArray[4]["id"];
           // alert($PostId);

            for(i in jsonArray)
            {
            $post_status=jsonArray[i]["status"];
            $status_image=jsonArray[i]["status_image"];
            $multimage=jsonArray[i]["multimage"];

              //alert(Lastid);

              //alert($post_status);
              //alert($status_image);
              //alert($multimage);

                  $('.load-more').attr('lastID',$PostId);
                  $('#result_table').append(jsonArray);

                     }
                 } 
            });
        }
    });
});
</script>
$(文档).ready(函数(){
$(窗口)。滚动(函数(){
var lastID=$('.load more').attr('lastID');
if($(窗口).scrollTop()==$(文档).height()-$(窗口).height()&&lastID!=0){
$.ajax({
类型:'POST',
url:“”,
数据:“id=”+lastID,
数据类型:'json',
发送前:函数(html){
$('.load more').show();
},
成功:函数(html){
//警报(html);
var ParsedObject=JSON.stringify(html);
var json=$.parseJSON(ParsedObject);
//警报(json);
/*
var json=“[{'id':1,'name':'Test1'},{'id':2,'name':'Test2'}]”;
var jsonArray=eval(“(“+json+”)”);
对于(我在jsonArray)
{
警报(jsonArray[i][“名称]);
}
*/
//警报(json.id);
var jsonArray=eval(“(“+json+”)”);
$PostId=jsonArray[4][“id”];
//警报($posted);
对于(我在jsonArray)
{
$post_status=jsonArray[i][“status”];
$status_image=jsonArray[i][“status_image”];
$multimage=jsonArray[i][“multimage”];
//警报(Lastid);
//警报($post_状态);
//警报($status\u image);
//警报($multimage);
$('.load more').attr('lastID',$PostId);
$('result_table').append(jsonArray);
}
} 
});
}
});
});

我想访问我的json数据,以便显示它,但当我访问时,所有变量都显示为未定义。然后在我的视图中,首先,您的
用户/get_all_post
需要返回json数据(并且具有带有
应用程序/json
的响应头)

使用
输出
类
(参考)

然后,您可以在jquery响应时使用json属性

success:function(response){
  alert(response.foo)
}

我想我找到了一个解决方案我只是在我的代码中添加了所有东西,我只需要访问我的json值,我只需要解析json值,然后我就可以访问for循环中的数组 希望对其他人也有帮助

    <script type="text/javascript">
$(document).ready(function(){
    $(window).scroll(function(){

        var lastID = $('.load-more').attr('lastID');

        if ($(window).scrollTop() == $(document).height() - $(window).height() && lastID != 0){
            jQuery.ajax({
                type:'POST',

                url:'<?php echo base_url("user/get_all_post"); ?>',
                 data: "id=" + lastID,
                    dataType: 'json', 


                beforeSend:function(html){
                    $('.load-more').show();
                },
                success:function(data){
                       var ParsedObject = JSON.stringify(data);            
                       var json = $.parseJSON(ParsedObject);

                        $PostId=json[4]['id'];


                        for(i as json)
                      {

                            var post_status = json[i]['status'];
                            $status_image = json[i]['status_image'];
                            var multimage = json[i]['multimage'];

                                       alert($status_image);               
                             $("#status_data").append('<div style=" margin: 20px 50px 0px 40px; ">'+'<a>'+'<?php echo img($user_image); ?>'  +'</a>'+'<a>'+ ' <?php echo $uname; ?>' +'</a>'+'<div>'+post_status+'</div>' +'</div>');

                             $("#status_data").append('<div style=" margin: 20px 50px 0px 40px; ">'+'<a>'+'<?php echo img($user_image); ?>'  +'</a>'+'<a>'+ ' <?php echo $uname; ?>' +'</a>'+'<div>'+'<img src="'+<?php base_url('uploads/'); ?> status_image+'">'+'</div>' +'</div>');
                      }
           $('.load-more').attr('lastID', $PostId);
                    }
            });
        }
    });
});
</script>

$(文档).ready(函数(){
$(窗口)。滚动(函数(){
var lastID=$('.load more').attr('lastID');
if($(窗口).scrollTop()==$(文档).height()-$(窗口).height()&&lastID!=0){
jQuery.ajax({
类型:'POST',
url:“”,
数据:“id=”+lastID,
数据类型:“json”,
发送前:函数(html){
$('.load more').show();
},
成功:功能(数据){
var ParsedObject=JSON.stringify(数据);
var json=$.parseJSON(ParsedObject);
$PostId=json[4]['id'];
for(i作为json)
{
var post_status=json[i]['status'];
$status\u image=json[i]['status\u image'];
var multimage=json[i]['multimage'];
警报($status\u image);
$(“状态数据”)。附加(“”+“”+“”+“”+“”+“”+“”+“”+“”+“”+“”+状态后+“”+“”+“”+“”+“”);
$(“#状态(u数据”)。追加(“”+“”+“”+“”+“”+“”+“”+“”+“”+“”+“”+“”+“”+“”+’状态(u图像+“”>“”+“”+“”);
}
$('.load more').attr('lastID',$PostId);
}
});
}
});
});

这就行了,不需要eval或jsonArray。感谢大家的回复。

获取
$返回的javascript对象似乎很奇怪。ajax
…将其转换为JSON,再转换回对象,然后使用
eval
!!。您会发现
html
是一个普通的javascript对象,您可以像其他对象一样使用它…您ode>json
是一个对象…
var jsonArray=eval(“(“+json+”)”当我提醒这些值$post_status数据在那里时,
将毫无用处,但当我尝试在html中访问它们时,它会显示未定义的变量如果您使用
datatype:json
您需要将
数据作为
json对象发送
like
数据:{“id”:lastID},
仍然显示缺少的元素@Mairajdo this:
success:function(jsonArray){
并删除stringify/parse/eval垃圾-即删除该垃圾和上面的行之间的所有内容
$PostId=jsonArray[4][“id”];
-例如。
    <script type="text/javascript">
$(document).ready(function(){
    $(window).scroll(function(){

        var lastID = $('.load-more').attr('lastID');

        if ($(window).scrollTop() == $(document).height() - $(window).height() && lastID != 0){
            jQuery.ajax({
                type:'POST',

                url:'<?php echo base_url("user/get_all_post"); ?>',
                 data: "id=" + lastID,
                    dataType: 'json', 


                beforeSend:function(html){
                    $('.load-more').show();
                },
                success:function(data){
                       var ParsedObject = JSON.stringify(data);            
                       var json = $.parseJSON(ParsedObject);

                        $PostId=json[4]['id'];


                        for(i as json)
                      {

                            var post_status = json[i]['status'];
                            $status_image = json[i]['status_image'];
                            var multimage = json[i]['multimage'];

                                       alert($status_image);               
                             $("#status_data").append('<div style=" margin: 20px 50px 0px 40px; ">'+'<a>'+'<?php echo img($user_image); ?>'  +'</a>'+'<a>'+ ' <?php echo $uname; ?>' +'</a>'+'<div>'+post_status+'</div>' +'</div>');

                             $("#status_data").append('<div style=" margin: 20px 50px 0px 40px; ">'+'<a>'+'<?php echo img($user_image); ?>'  +'</a>'+'<a>'+ ' <?php echo $uname; ?>' +'</a>'+'<div>'+'<img src="'+<?php base_url('uploads/'); ?> status_image+'">'+'</div>' +'</div>');
                      }
           $('.load-more').attr('lastID', $PostId);
                    }
            });
        }
    });
});
</script>