如何从HTML中的for循环调用jQuery函数

时间:2013-04-26 16:02:23

标签: javascript jquery xslt foreach

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

我有这个XSL for-each循环,它生成3个字符串Music,TV,Comedy

HTML(以及我的javascript尝试) 未捕获的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中将这些值捕获到一个Array中。我正在“打印”我需要的字符串到一个隐藏的div,因为每个字符串都由for-each循环“打印”,我想调用我的jQuery函数并将每个字符串添加到Array。

我的jQuery功能

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

到目前为止,我遇到了语法错误,不确定如何从不是onClick或依赖于页面url的页面调用Javascript / jQuery函数(所有内容都发生在1页,因此没有新页面,只是那些被隐藏和隐藏的div。。

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

谢谢你偷看! :)

2 个答案:

答案 0 :(得分:1)

你的功能不是“jQuery功能” - 它是javascript。您需要在通话前删除$.

答案 1 :(得分:0)

不应该&#39; T:

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

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

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