如何命名每个jQuery Raty隐藏的输入元素?

时间:2013-04-01 07:53:31

标签: javascript jquery jquery-plugins jstl raty

我正在使用jQuery Raty plugin在我的网站上启用星级评分系统。

我有一组4个ratable问题(也可以是5个),我用循环动态显示。 因此,为了显示星星我正在使用div id如下:

    <c:forEach items="${myQuestionList}" var="singleQuestion" varStatus="status">

        <p>${singleQuestion.text}</p>

        <div id="star${status.index+1}"></div>

    </c:forEach>

Raty初始化代码如下:

$("div[id^=star]").raty({ 
                         width: 300
                      });

这完全没问题。显示我的所有4(或5)个问题,并显示Raty星。

现在的问题是这个评级是在一个表格和需要提交。但问题是Raty在每个Raty&amp; amp;上添加<input type="hidden" name="score">。因此,在提交表格时,不可能说出哪个评级是针对哪个问题的。

有没有办法可以为每个Raty隐藏的输入元素分配一个不同的名称,这有助于我将其与所提出的问题联系起来。

Raty文档说我可以将得分名称更改为任何内容:

$('#star').raty({ scoreName: 'myscore' });

但那对我来说无法帮助我因为我正在为所有元素初始化raty插件。

我该如何解决这个问题?请指导。我被卡住了。 :(

1 个答案:

答案 0 :(得分:5)

好的,我自己解决了。

对于任何陷入同一点的人来说,这是解决方案:

scoreName: function(){
                    return $(this).attr('id');
                }

这会将得分名称设置为ID名称。您也可以将其设置为其他任何内容。