0

所以这可能是一个独特的问题

我有这个 XSL for-each 循环,它生成 3 个字符串音乐、电视、喜剧

HTML(和我的 javascript 尝试) Uncaught SyntaxError

<div id="rgt" style="position:absolute; height:1px; visibility:hidden;">
    <xsl:for-each select="$GenreTypes/item">
        <div id="rgt-{position()}">
            <xsl:value-of select="sc:fld('title',.)" /><!-- Spits out Music, TV, Comedy -->

            <!-- Where I'm trying to call my function to add titles to an Array -->
            <script type="text/javascript">$.addRelatedGenres('{sc:fld('title',.)}');</script>
         </div>
     </xsl:for-each>
</div>

基本上我需要将这些值捕获到 jQuery 中的数组中。我正在将需要的字符串“打印”到隐藏的 div 中,因为每个字符串都被 for-each 循环“打印”,我想调用我的 jQuery 函数并将每个字符串添加到数组中。

我的 jQuery 函数

function addRelatedGenres(rgt_name) {
    console.log(rgt_name);
}

到目前为止,我遇到了语法错误,不知道如何从不是 onClick 或不依赖于页面 url 的页面调用 Javascript / jQuery 函数(一切都发生在 1 页上,所以没有新页面,只有 div被隐藏和隐藏)。

也许有更好的方法来做到这一点?

感谢您的关注!:)

4

2 回答 2

1

您的函数不是“jQuery 函数”——它是 javascript。您需要$.在通话前删除 from 。

于 2013-04-26T16:28:19.320 回答
0

不应该:

<script type="text/javascript">$.addRelatedGenres('{sc:fld('title',.)}');</script>

<script type="text/javascript">$.addRelatedGenres('<xsl:value-of select="sc:fld('title',.)" />');</script>

?

IIRR,{ } 语法仅适用于属性。

于 2013-04-26T16:15:15.250 回答