gpt4 book ai didi

javascript - 如何读取 XSL-T 中的 URL 然后将其传递到 jQuery 函数?

转载 作者:行者123 更新时间:2023-11-28 07:55:19 25 4
gpt4 key购买 nike

对此提前表示歉意:我是 XSLT 和 jQuery 的新手,这一点很快就会变得显而易见。首先,我将给出我正在使用的文件的(精简的)内容,然后我将提出我的问题。

测试.xml:

<?xml version="1.0" encoding="UTF-8"?>
<contentDefinition>
<contentDefinitionNode objectId="rssFeedUrl" type="textbox" label="RSS Feed URL" required="yes" translate="false">http://clinicaltrials.gov/ct2/results/rss.xml</contentDefinitionNode>
</contentDefinition>

测试.xsl:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes" encoding="utf-8" omit-xml-declaration="yes"/>
<xsl:variable name="rssFeedUrl" select="//contentDefinitionNode[@objectId='rssFeedUrl']/@select" />

<xsl:template match="/">
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script src="C:\Users\me\Documents\Visual Studio 2012\Projects\ContentDemo\scripts\jquery.zrssfeed.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#test').rssfeed('$rssFeedUrl', {
});
});
</script>
</head>
<body>
<div id="test"></div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

我想做的是从 test.xml 读取 rssFeedUrl 并将其传递到 test.xsl 的 rssfeed 函数中。在 VS 中运行转换,我不断收到以下消息:“指定的 URL 无效。”我知道 URL 没问题,因为当我将其直接传递到 rssfeed 函数时,我得到了我期望的提要。所以我猜测它是从 xml 文件中错误读取的。

我自己尝试了很长一段时间来解决这个问题,但甚至不知道如何显示无效的 URL。我尝试将以下内容插入到元素中,但收到一条错误,指出变量无效:

<script>
function showIt() {
alert($rssFeedUrl)
};
window.onload=showIt
</script>

我猜这个错误是因为变量超出范围,但我不知道如何修复它。这只是一个很长的说法,我试图调试 URL 问题,但我不确定如何去做。 (我什至不知道如何使用 xsl 将 的值打印到屏幕上。)

如果有任何帮助,我将不胜感激。如果这些问题的答案是显而易见的,我再次表示歉意。我对其中大部分内容都很陌生。

最佳答案

我不确定这是否是执行此操作的最佳方法,但在发布问题后我立即得到了一些东西。我更新了函数调用,如下所示:

<script type="text/javascript">
$(document).ready(function () {
$('#test').rssfeed('<xsl:value-of select="contentDefinition/contentDefinitionNode [@objectId= 'rssFeedUrl']"/>', {
limit:<xsl:value-of select="contentDefinition/contentDefinitionNode [@objectId= 'rssItemMaxCount']"/>
});
});
</script>

我不确定这是否是最强大或最灵活的方式,但它正如我所希望的那样工作。

关于javascript - 如何读取 XSL-T 中的 URL 然后将其传递到 jQuery 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26168733/

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