Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.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 实现html结构的数组对象_Javascript_Html - Fatal编程技术网

Javascript 实现html结构的数组对象

Javascript 实现html结构的数组对象,javascript,html,Javascript,Html,我如何才能将数组对象从javascript添加到html div,很抱歉问这个问题,但这对我和我的任务都非常重要,我仍在学习,我不知道怎么做,有人能帮我解决这个问题吗?我将从代码中学习。我需要实现从数组到html结构的信息,并在那里显示这些信息。请理解,谢谢理解 在此处插入标题 奥索巴级{ 构造器(id、名、姓、年龄、性别、朋友){ 这个。_id=id; 这个。_firstName=firstName; 这._姓氏=姓氏; 这个。_年龄=年龄; 这._性别=性别; 这个。_friends=朋

我如何才能将数组对象从javascript添加到html div,很抱歉问这个问题,但这对我和我的任务都非常重要,我仍在学习,我不知道怎么做,有人能帮我解决这个问题吗?我将从代码中学习。我需要实现从数组到html结构的信息,并在那里显示这些信息。请理解,谢谢理解


在此处插入标题
奥索巴级{
构造器(id、名、姓、年龄、性别、朋友){
这个。_id=id;
这个。_firstName=firstName;
这._姓氏=姓氏;
这个。_年龄=年龄;
这._性别=性别;
这个。_friends=朋友;
}
获取id(){
返回此。\u id;
}
设置id(id){
这个。_id=id;
}
获取名字(){
返回此。\u firstName;
}
设置名字(名字){
这个。_firstName=firstName;
}
姓{
把这个还给我;
}
设置姓氏(姓氏){
这._姓氏=姓氏;
}
获得年龄(){
把这个还给我;
}
设定年龄(年龄){
这个。_年龄=年龄;
}
获取性别(){
把这个还给我;
}
设定性别(性别){
这._性别=性别;
}
交朋友{
把这个还给你的朋友;
}
设置好友(好友){
这个。_friends=朋友;
}
}
var osobe=[]//我的空数组
$(函数(){$.getJSON('https://raw.githubusercontent.com/Steffzz/damnz/master/data.json,函数(数据)
{
var json=jQuery.parseJSON(json.stringify(data));
for(json的人)
{
//将值赋予对象属性
变量id=人['id'];
var firstName=person['firstName'];
var姓氏=人[‘姓氏’];
变量年龄=人[‘年龄’];
变量性别=人[‘性别’];
log(“json是:”,json.stringify(json,未定义,3));
var friends=person['friends'].map(
函数(friendId){
log(“friendID为:”,friendID);
var friend=json.find(函数(person){return person.id==friendId;});
log(“friend is:”,JSON.stringify(friend,undefined,2));
返回{
名字:朋友,名字,
姓:朋友
}
}
);
var x=新的Osoba(id、名字、姓氏、年龄、性别、朋友);
osobe.push(x);//生成和对象并将它们添加到数组中
}     
控制台日志(osobe);
}) 
});

您应该使用javascript foreach循环

数组完成后,在变量中创建html结构,但在foreach循环中将文本替换为数组中的变量:

yourArray.forEach(function(element) {
    //var element is the current iteration of your array
    var html += 
        '<div class="col-4">
            <a href="profile.html" class="">
            <div class="px-3 py-2 text-center user-name bgd-clr-red clr-white">
                {element.name} {element.lastname}</div>

            [...]

        </div>'
});

首先,当您获得请求数据时,您就有了对象列表。您可以通过迭代列表生成所需的html,并为每个列表项生成所需的html

这里的基本示例只是给你一个想法:

但是我在这里描述的不是很好的解决方案——使用jQuery进行这样的DOM操作需要花费很多

附言


<>我建议你看一些关于反应路由器的教程,例如,或者Vu.js,在如何构建页面和页面转换方面,

请阅读并考虑改进你的问题。你能帮我做这件事吗?好的,我做了第一部分,你能告诉我如何把信息添加到另一个页面吗?我更新了答案,但是,好吧,你有其他的html页面来获取详细信息吗,或者你只是想不重新加载就完成它吗?正如你在上面的代码中看到的,我有第二个页面来获取他们的信息。这应该使我数组的每个元素都具有html结构?@StefanSipic是的,这是一个循环,数组的每个索引都是foreach内部的一个交互,请检查此文档
document.getElementById('idTarget').innerHtml += html;
function() {$.getJSON('https://raw.githubusercontent.com/Steffzz/damnz/master/data.json', function(data) {
            var jsonData = jQuery.parseJSON(JSON.stringify(data));
                var generatetRawHtmlList = [];

            for(person of jsonData)
            {
                generatetRawHtmlList.push(`<div class="col-4"> Name ${person.surname} Surname: ${person.firstName}</div>`)

            }

            $('#container').append(generatetRawHtmlList.toString())

         })}
 $.getJSON('https://raw.githubusercontent.com/Steffzz/damnz/master/data.json', 
 function(data) {
  var jsonData = jQuery.parseJSON(JSON.stringify(data)),
      personById = jsonData.find(function(el){ 
                return +el.id === +personIdFromUrl;
            });

       if(personById){
            var detailsString = `<div>Details here - ${el.surname} ${el.age}</div>`;
            $('#detailsContainerOnYourPage').append(detailsString);
        }

 }