gpt4 book ai didi

jquery - 打印出所有json对象,包括图片?

转载 作者:行者123 更新时间:2023-12-01 05:20:39 25 4
gpt4 key购买 nike

当我单击“alleLand”按钮时,我需要一些帮助来尝试打印所有 JSON 对象,其中包括名称、城镇和图片。使用 JSON 真的很陌生,所以我真的不知道我在做什么。希望有人可以帮忙!

<body>
<div>
<h3 id="header">Mitt feriested</h3>
<label>Land:
<input id="land" type="text">
</label>
<input id="sokLand" class="landBtn" type="button" value="Søk etter land">
<input id="alleLand" class="landBtn "type="button" value="Velg alle destinasjoner">
</div>

<script src="scripts/jquery-3.2.0.min.js"></script>
<script>

var feriestederJSON = { landliste: [
{"land": "Tyskland",
"by": "Munchen",
"bildeAvBy": "munchen.jpg"
},
{"land": "Tyskland",
"by": "Berlin",
"bildeAvBy": "berlin.jpg"
},
{"land": "Spania",
"by": "Barcelona",
"bildeAvBy": "barcelone.jpg"
},
{"land": "Spania",
"by": "Palma",
"bildeAvBy": "palma.jpg"
},
{"land": "Norge",
"by": "Oslo",
"bildeAvBy": "oslo.jpg"
},
{"land": "Norge",
"by": "Bergen",
"bildeAvBy": "bergen.jpg"
},
]};

$(function() {
$(document).on('click','#alleLand',function() {
var antallLand = feriestederJSON.landliste.length;
for(var i = 0; i < antallLand; i++){
var land = feriestederJSON.landliste[i].land;
var by = feriestederJSON.landliste[i].by;
var bildeAvBy = feriestederJSON.landliste[i].bildeAvBy;
}
});
}
</script>

</body>

最佳答案

只需创建一个用于保存列表的新元素,在循环外部创建一个新的 javascript 变量,然后将要显示的 html 字符串附加到其中即可。然后用该变量替换您创建的元素的innerHTML。

示例元素:

<ul id="land_list"></ul>

添加代码:

    var output_html = '';

for(var i = 0; i < antallLand; i++){
var land = feriestederJSON.landliste[i].land;
var by = feriestederJSON.landliste[i].by;
var bildeAvBy = feriestederJSON.landliste[i].bildeAvBy;

output_html += '<li>' + land + ', ' + by + ', <img src="' + bildeAvBy + '" /></li>';
}

document.querySelector("#land_list").innerHTML = output_html;

编辑 - 因为代码未运行:最好在元素本身上使用 onclick 或基于 JavaScript 的事件监听器,而不是基于 jQuery 的事件监听器。将列表方法移至函数中并在单击时运行该函数。

<input id="alleLand" class="landBtn "type="button" value="Velg alle destinasjoner" onclick="list_json_data();">

Javascript:

function list_json_data() {
var feriestederJSON ... // Make sure to replace this
var output_html = '';

for(var i = 0; i < antallLand; i++){
var land = feriestederJSON.landliste[i].land;
var by = feriestederJSON.landliste[i].by;
var bildeAvBy = feriestederJSON.landliste[i].bildeAvBy;

output_html += '<li>' + land + ', ' + by + ', <img src="' + bildeAvBy + '" /></li>';
}

document.querySelector("#land_list").innerHTML = output_html;
}

关于jquery - 打印出所有json对象,包括图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44264415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com