在javascript中遍历列表列表时出错

在javascript中遍历列表列表时出错,javascript,jquery,asp.net-mvc,model-view-controller,Javascript,Jquery,Asp.net Mvc,Model View Controller,我带着Ajax从controller返回一个模型,该模型被设置为toArray,以便操作数据。但是,这个列表有2个对象,在每个对象中,一个作业可以有一个图片列表。我可以循环对象,但当我循环该对象中属性名为的列表时,表示该名称不存在,在我的情况下,我非常确定它存在 posts.FindJobs.JobPictures是一个列表,每个索引中都有一些字节。 这是我的密码 $.each(posts.FindJobs, function (i, posts) {

我带着Ajax从controller返回一个模型,该模型被设置为toArray,以便操作数据。但是,这个列表有2个对象,在每个对象中,一个作业可以有一个图片列表。我可以循环对象,但当我循环该对象中属性名为的列表时,表示该名称不存在,在我的情况下,我非常确定它存在

posts.FindJobs.JobPictures是一个列表,每个索引中都有一些字节。

这是我的密码

  $.each(posts.FindJobs, function (i, posts) {


                console.log(posts);
                $(".job-container").append(`


                        <li class="separate-job" id="All-Jobs-Id" value="` + posts.jobId + `">
                            <div class="content-li-All-Jobs">
                                <h2 class="content-li-All-headline" id="headline-for-Update">`+ posts.Headline + `</h2>
                                <a class="btn btn-success bid-for-job" value="`+ posts.jobId + `" href="#">Bid now</a>
                                <div class="user">
                                    <blockquote class="blockquote">
                                        <p class="mb-0">
                                            <div class="about-job">`+ posts.About + `</div>
                                        </p>
                                        <div class="blockquote-footer">
                                            <cite>-`+ posts.Username + `</cite>
                                        </div>
                                    </blockquote>
                                </div>
                                <div class="pictures-li">
                                   `+$.each(posts.FindJobs.JobPictures, function (i, pictures) {
                                        console.log(pictures);
                                    })+`
                                </div>

                                <div class="job-date-li">
                                    Posted

                                </div>
                                <div class="-job-town">Area | <span class="city">`+posts.JobCity+`</span></div>
                            </div>
                        </li>



`)

            });

问题是,您试图直接访问FindJobs上的JobPictures,而需要循环查看每个职位的JobPictures

我建议使用不同的变量名,如post,而不是重复使用posts变量名,即:

将外部循环更改为

$.each(posts.FindJobs, function (i, post) { // <-- use post as the inner variable
当你真的有:

{
  FindJobs: [ // <-- this is an array your outer loop is going over
    { jobId: 1, JobPictures: [ ... ], ... } // <-- your job items have their own JobPictures array
    { jobId: 2, JobPictures: [ ... ], ... }
    ...
  ]
}

在控制台中的posts.FindJobs[i].JobPictures

@messerbill.logposts我可以看到2个索引2个作业,在每个作业中我可以看到另一个数组,称为JobPictures,但当我尝试迭代时,它会给我一个错误。我附上了两张照片来显示:@messerbill是的,它被执行了,问题回答如下:
{
  FindJobs: {
    JobPictures: [ ... ]
  }
}
{
  FindJobs: [ // <-- this is an array your outer loop is going over
    { jobId: 1, JobPictures: [ ... ], ... } // <-- your job items have their own JobPictures array
    { jobId: 2, JobPictures: [ ... ], ... }
    ...
  ]
}