javascript - 如何使用 jquery 提取 XML 文档的一部分进行转换 (xslt)?

标签 javascript jquery xml extract

我想知道如何使用 jquery 将 XML 文档的一部分提取到将通过 XSLT 转换的对象中?所以,假设我有这个示例 XML 文档:

<nutrition>

<daily-values>
    <total-fat units="g">65</total-fat>
<saturated-fat units="g">20</saturated-fat>
<cholesterol units="mg">300</cholesterol>
<sodium units="mg">2400</sodium>
<carb units="g">300</carb>
<fiber units="g">25</fiber>
<protein units="g">50</protein>
</daily-values>

<food>
<name>Avocado Dip</name>
<mfr>Sunnydale</mfr>
<serving units="g">29</serving>
<calories total="110" fat="100"/>
<total-fat>11</total-fat>
<saturated-fat>3</saturated-fat>
<cholesterol>5</cholesterol>
<sodium>210</sodium>
<carb>2</carb>
<fiber>0</fiber>
<protein>1</protein>
<vitamins>
    <a>0</a>
    <c>0</c>
</vitamins>
<minerals>
    <ca>0</ca>
    <fe>0</fe>
</minerals>
</food>

<food>
<name>Bagels, New York Style </name>
<mfr>Thompson</mfr>
<serving units="g">104</serving>
<calories total="300" fat="35"/>
<total-fat>4</total-fat>
<saturated-fat>1</saturated-fat>
<cholesterol>0</cholesterol>
<sodium>510</sodium>
<carb>54</carb>
<fiber>3</fiber>
<protein>11</protein>
<vitamins>
    <a>0</a>
    <c>0</c>
</vitamins>
<minerals>
    <ca>8</ca>
    <fe>20</fe>
</minerals>
</food>
</nutrition>

假设我只想要第一个 ... block ,我希望将其保存为对象或字符串。如何使用 jquery 完成此操作?一旦我提取了 XML block ,我就可以正确地结合 XSL 文档进行转换 (XSLT)。非常感谢您的帮助!

更新;澄清:

如果我的问题不清楚,我深表歉意。请允许我澄清我的立场。

我很清楚可以使用浏览器的DOM 来操作XML,以及IE 和非IE 实现之间的差异。我可以在 XML 对象上使用 cloneNode 和 selectNodes 等方法。事实上,我就是这样做的。现在,如果我将 jQuery 纳入等式,我想用 jQuery 处理它的方式替换所有这些代码行。也就是说,也许有一个 jQuery 插件可以消除直接与每个浏览器的 XML DOM 交互的需要,“在幕后”处理交叉兼容性。我正在寻找一个 js 框架,它将为我处理所有事情,而不是我现在如何处理它,这是 IE 和非 IE 浏览器的单独实现。

我希望这能澄清我的问题。

非常感谢您的帮助。

最佳答案

使用 jQuery.parseXML(xmlString) 可以将 XML 字符串转换为 jQuery 对象,然后用它做任何你想做的事情。

如果是XML文件,可以通过AJAX获取

$.ajax({
        type: "GET",
        url: "file.xml",
        dataType: "xml",
        error: function(){},
        success: function (xml) {// you can access the parsed XML just like you do it with HTML }
    });

关于javascript - 如何使用 jquery 提取 XML 文档的一部分进行转换 (xslt)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6907130/

相关文章:

javascript - 区分greasemonkey脚本中不同页面的最佳方法?

javascript - 根据一天中的时间设置默认选项选择值

xml - 如何在 XSL-FO 中将分页符从表行组中分离出来

javascript - 从函数内重新分配全局变量

javascript - jQuery 内部 html 问题

javascript - Bootstrap - 模态有时会中断滚动

drag-and-drop - 拖放 HTML5 jQuery : how to fire the drop event?

javascript - 使用 javascript(或 jQuery)选择和操作 CSS 伪元素,例如::before 和::after

java - 由于 "No package identifier when getting value of resource number..."而崩溃

php - 在php中比较和过滤两个xml文件