如何用javascript从数组中填充无序列表
How to populate unordered list from array with javascript?
我目前正在用Phonegap创建一个应用程序。我想循环使用一种数组形式来创建一个无序列表,其中url和title是存储的值:
<li><a href="[url]">[title]</a></li>
我对这种开发应用程序的方式有点陌生,我真的不确定将这些数据存储在应用程序根目录中的最佳方式。我想我本可以制作一个JS数组,但我想把它保存在一个单独的文件中。因此,我制作了一个json文件:
{
"title": "thisistheurl.com",
"title": "thisistheurl.com"
}
如何根据本地json文件中的数据创建此列表?我尝试了这个,但没有任何运气:
$.getJSON( "links.json", function( data ) {
var items = [];
$.each( data, function( key, val ) {
$("linkList").append( "<li id='" + key + "'>" + val + "</li>" );
});
});
需要更改的两件事:
$.each( data, function( key, val ) {
$("linkList").append( "<li id='" + key + "'>" + val + "</li>" );
});
起初,没有名为linkList
的元素,可能是您想将ul
中的元素附加为类.linkList
或Id #linkList
。
另一个,Inside $.each
键表示title
,值表示the url
。但是你分配错了。
$("linkList").append( "<li id='" + key + "'>" + val + "</li>" );
应该是
$("selector").append( "<li id='" + val+ "'>" + key+ "</li>" );
我在这里没有看到任何a
标签。您可能还需要添加a
标签。
还要注意,对象中不能有重复的密钥title
。在这种情况下,您可能需要使用一组对象。
[{
"title": "title you desire",
"link" : "thisistheurl.com"
},{
"title": "title you desire",
"link" : "thisistheurl.com"
},{
"title": "title you desire",
"link" : "thisistheurl.com"
}]
演示:
var data = [{
"title": "title you desire",
"link" : "thisistheurl.com"
},{
"title": "title you desire",
"link" : "thisistheurl.com"
},{
"title": "title you desire",
"link" : "thisistheurl.com"
}];
$.each( data, function( key, val ) {
var $li = $("<li><a href='"+val.link+"'>"+val.title+"</a></li>");
$("#linkList").append($li);
});
ul#linkList {
border: 1px solid black;
}
#linkList li a:link {
color: red;
}
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<ul id="linkList"></ul>
相关文章:
- 如何设置html元素填充的动画
- 如何使用jquery在填充自动完成的值后使文本框只读
- 如何通过ajax刷新JSF填充的javascript变量
- 用与线条相同的颜色填充多折线图上的点
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 带有填充属性的SVG矩形显示在包含元素的上方插入框阴影
- 用我的json数据填充JQuery DataTable
- 使用 jQuery 检查所有值是否为空或已填充
- 为什么不't我的变量在我的控制器中填充后在我的视图中呈现
- 如何让typeahead在我的搜索栏中填充自定义参数
- 如何使用JSON字符串中的jQuery填充下拉框
- 动态填充两个下拉菜单
- 如何将CSS(特别是填充/边距)应用于select下拉菜单的选项或optgroup
- spine.js在启动时填充模型实例
- 如何将要单独填充的每个HTML画布路径/形状分开
- CSS赢得't填充视图端口
- 从JSON填充列表(而不是HTML)
- 如何用javascript从数组中填充无序列表
- 如何用jQuery一次填充一个无序列表中的一个元素
- 从弹出窗口到主窗口填充无序列表