Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.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 为数组中的每个对象创建带条件的div_Javascript_Jquery - Fatal编程技术网

Javascript 为数组中的每个对象创建带条件的div

Javascript 为数组中的每个对象创建带条件的div,javascript,jquery,Javascript,Jquery,我正在尝试创建一个框,其中包含来自数组中用户id为1的每个对象的信息 因此,在这种情况下,应在html中创建两个框 "data": [ { "id": 1, "user_id": 1, "name": "James Smith" }, { "id": 2, "user_id": 1, "name": "Rebecka Gordon" }, { "id": 3, "user_id": 2, "name": "Carl Gonzales" }, ] $.each(data.data, funct

我正在尝试创建一个框,其中包含来自数组中用户id为1的每个对象的信息

因此,在这种情况下,应在html中创建两个框

"data": [
{
"id": 1,
"user_id": 1,
"name": "James Smith"
},
{
"id": 2,
"user_id": 1,
"name": "Rebecka Gordon"
},
{
"id": 3,
"user_id": 2,
"name": "Carl Gonzales"
},
]


$.each(data.data, function (index, value) {

    if (this.user_id == 1) {

      console.log(this);

        $('.container').html($('<div>', {class: 'box'}));

    }

});
“数据”:[
{
“id”:1,
“用户id”:1,
“姓名”:“詹姆斯·史密斯”
},
{
“id”:2,
“用户id”:1,
“姓名”:“丽贝卡·戈登”
},
{
“id”:3,
“用户id”:2,
“姓名”:“卡尔·冈萨雷斯”
},
]
$.each(data.data,函数(索引,值){
if(this.user_id==1){
console.log(this);
$('.container').html($('',{class:'box'}));
}
});
根据
html()的功能,方法是:“设置匹配元素集中每个元素的html内容。”

这意味着,即使匹配循环中的两个对象,也会将
'.container'
元素的内容设置为相同的内容两次

.html()
不同,根据
html()的功能使用,
方法是:“设置匹配元素集中每个元素的html内容。”

这意味着,即使匹配循环中的两个对象,也会将
'.container'
元素的内容设置为相同的内容两次

在这行中使用
代替
.html()

$.each(data.data, function (index, value) {
if (this.user_id == 1) {
您使用了data.data,但数据足以引用数组:

$.each( data, function( index, value ){
在这方面:

$.each(data.data, function (index, value) {
if (this.user_id == 1) {
这不是引用数组,而是在值中:

if (value.user_id == 1) {
.html
将获得对特定DOM元素的引用,但有助于添加新元素
.append
将执行以下操作:

$('.container').append('<div></div>')
$('.container')。追加(“”)
总之,它应该是:

$.each( data, function( index, value ){
    if (value.user_id == 1) {

       $('.container').append('<div class="box">I am a box</div>');    

    }

});
$。每个(数据、函数(索引、值){
if(value.user_id==1){
$('.container').append('我是一个盒子');
}
});

在这一行中:

$.each(data.data, function (index, value) {
if (this.user_id == 1) {
您使用了data.data,但数据足以引用数组:

$.each( data, function( index, value ){
在这方面:

$.each(data.data, function (index, value) {
if (this.user_id == 1) {
这不是引用数组,而是在值中:

if (value.user_id == 1) {
.html
将获得对特定DOM元素的引用,但有助于添加新元素
.append
将执行以下操作:

$('.container').append('<div></div>')
$('.container')。追加(“”)
总之,它应该是:

$.each( data, function( index, value ){
    if (value.user_id == 1) {

       $('.container').append('<div class="box">I am a box</div>');    

    }

});
$。每个(数据、函数(索引、值){
if(value.user_id==1){
$('.container').append('我是一个盒子');
}
});