如何在JSON中加载对象内部的数组元素
How do I load the elements of an array inside of an object in JSON?
我以前问过一个类似(但不同)的问题。
从那以后,我改变了处理这个问题的方式。
这是我的JSON文件。
到目前为止,这是我的javascript:
$(document).ready(function () {
var loadArticle = function (articleID, articleH) {
var article = $("#article").clone();
var thelist = '<dl id="article' + articleID + 'sections"></dl>';
$(article).attr("id", "article" + articleID);
$(article).append(articleH);
$(article).html(thelist);
return article;
}
var loadSection = function (articleID, sectionID, sectionContent) {
var section = "#article" + articleID + "sections";
$(section).append("<dt>Section " + sectionID + "</dt>");
$(section).append("<dd>" + sectionContent + "</dd>");
return section;
}
var loadConstitution = function (d) {
$.each(d, function (i) {
var articleID = i + 1;
var articleH = "<p class='lead' id='article" + articleID + "'><strong>Article " + articleID + "</strong></p>";
$("#constitutionHolder").append(loadArticle(articleID, articleH));
//$.each(d.sections, function(j){
// var sectionID = j + 1;
// var theSection = d.sections[j];
//$("#article" + articleID + "sections").append(articleID, sectionID, mySection);
//})
})
}
$.getJSON('data/stuff.json', loadConstitution);
})
基本上,我遍历每个数据点,并用id="article1"
(或文章的编号)创建一个新的<div>
。然后,由于每个文章对象都填充了一个"sections"
数组,因此我需要访问该数组中的数据,并将其附加到我拥有的<dl></dl>
中。
在我的HTML中,这就是我的.clone()
ing:
<div id="constitutionHolder">
<div class="alert text-black" id="article">
<p class="lead" id="articleHeader"><strong>Article 1</strong>
</p>
<dl id="sectionList"> <dt id="article_section">Section 1</dt>
<dd id="article_sectionINFO">this stuff belongs to section 1</dd>
</dl>
</div>
</div>
到目前为止,我有两个问题:
$(article).append(articleH);
不工作我无法将这些部分加载到
sectionList
中。
我该如何解决这个问题?
有很多方法可以实现这一点,但下面是一个您可以修改以适合您的应用程序的示例:http://jsfiddle.net/DgU3w/.(注意,我去掉了一些细节,试图理解这个问题)
我在你的例子中注意到了一些事情:
loadArticle()
否定了以下语句的一些工作:$(article).html(thelist);
loadArticle()
克隆一个HTML块,但随后会附加与克隆的元素相匹配的新元素- 包装jQuery对象(例如
$(jQueryObj)
)没有坏处,但也没有必要 - 某些ID已初始化为唯一值,但其他ID则未初始化
相关文章:
- 访问JSON对象内部的数组元素
- 如何确定对象内部包含对象的JSON的长度
- 正在更新mongod中两个对象内部的数组
- 如何访问对象内部的“categoryIds”字段/键,该对象包含mongodb's `ObjectId(s)`数
- 在javascript中移动对象内部的元素
- 基于使用angular在下拉列表中选择的对象,迭代对象内部的对象
- 如何清除Javascript对象内部的setTimeout
- 为什么数组在对象内部迭代对象时存储重复值
- 我如何使用D3来强制用户点击g.node对象内部的圆形对象
- 正在获取对象内部数组中的对象总数
- 从对象内部调用knockout.js ko.applyBindings()
- 使用ng-src增强对象内部的数组
- 如何在javascript中从对象内部的数组中获取数据
- 对象内部函数内的对象文本的范围
- 在 Forerunner 数据库集合中创建主键时,key 属性是否可以位于集合对象的对象内部
- 如何过滤对象内部深度堆叠的数据(并在之后编辑删除它)
- 对象内部数组中的角度 ng 重复键
- 访问对象内部的数组
- Jhon Papa Angular Style guide Factory-对象内部的函数未运行
- 检查数组中的项是否存在于对象内部