使用 jQuery 生成一个包含 XML 数据的表
Generating a table with jQuery with XML data
我是jQuery和js的新手。我正在尝试从 XML 数据创建一个表,但我无法正确输出。这是我到目前为止所拥有的:
.HTML:
<table id="daily_fruit">
<tbody>
</tbody>
</table>
j查询:
var xml = '<daily_fruit><day>Mon</day><type>apple</type><day>Tues</day><type>orange</type><day>Wed</day><type>banana</type><day>Thur</day><type>pear</type></daily_fruit>';
xmlDoc = $.parseXML(xml),
$xml = $(xmlDoc);
$($xml).each(function() {
var showTimes = $xml.find('daily_fruit').each(function() {
var $day = $(this).find('day').text();
var $type = $(this).find("type").text();
$("#daily_fruit").find('tbody')
.append($('<tr>')
.append($('<td>')
.append($day))
)
.append($('<td>')
.append($type))
});
});
电流输出:
MonTuesWedThur
appleorangebananapear
期望输出:
Mon apple
Tues orange
Wed banana
Thur pear
我想我很接近,但我就是想不通。
尝试修改 XML,以便每个水果都在自己的标记中。然后,不要为每个循环找到"daily_fruit"标签,而是使用"水果"标签。
这是一个jsfiddle:https://jsfiddle.net/57wgab88/
var xml = '<daily_fruit><fruit><day>Mon</day><type>apple</type></fruit><fruit><day>Tues</day><type>orange</type></fruit><fruit><day>Wed</day><type>banana</type></fruit><fruit><day>Thur</day><type>pear</type></fruit></daily_fruit>';
xmlDoc = $.parseXML(xml),
$xml = $(xmlDoc);
$($xml).each(function() {
var showTimes = $xml.find('fruit').each(function() {
var $day = $(this).find('day').text();
var $type = $(this).find("type").text();
$("#daily_fruit").find('tbody')
.append($('<tr>')
.append($('<td>')
.append($day))
.append($('<td>')
.append($type))
)
});
});
给定这样的 XML 结构,您应该遍历<day>
元素。假设每个<day>
后面总是跟着相应的<type>
元素:
var xml = '<daily_fruit><day>Mon</day><type>apple</type><day>Tues</day><type>orange</type><day>Wed</day><type>banana</type><day>Thur</day><type>pear</type></daily_fruit>';
xmlDoc = $.parseXML(xml),
$xml = $(xmlDoc);
$($xml).each(function() {
var showTimes = $xml.find('day').each(function() {
var $day = $(this).text();
var $type = $(this).next("type").text();
$("#daily_fruit").find('tbody')
.append($('<tr>')
.append($('<td>')
.append($day))
.append($('<td>')
.append($type))
)
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="daily_fruit">
<tbody>
</tbody>
</table>
相关文章:
- JavaScript数组包含一个值
- 预期响应包含一个对象,但在angular js中得到一个数组错误
- 使用Google闭包编译器包含一个Ecmascript 6类
- 我如何才能包含一个iframe视频,这样它就不会't负载
- 响应应包含一个对象,但得到的却是GET操作的数组
- 普通JS:使80%宽度元素100%IF包含一个图像
- 包含一个集合的1到3个成员但其中一个成员不能单独存在的正则表达式
- AJAX数据包含一个或多个单词.
- jQuery将输入集中在下一个tr->td时,td包含一个输入字段,但从不关注html选择
- 在脚本标记中包含一个javascript文件
- Javascript(如果var包含一个单词,则仅更改该单词的颜色)
- 如果类只包含一个特定数字,则向元素添加类
- 长度为N的字符串的javascript正则表达式,其中至少包含一个字母x
- 正则表达式:密码必须至少包含一个特殊字符
- 如何在jsp页面中包含一个拖放交互UI
- 编写一个包含一个大写字母和六个数字的javascript表达式
- 在 Firebug 中“持久”包含一个脚本
- 如果网站在框架/ iframe内,则document.referer将始终包含一个值
- Meteor.js HTTP.get 获取 JSON 引号并解析结果似乎包含一个回调函数
- 所有有效的电子邮件是否至少包含一个@符号