将rateit jquery插件应用于选择框

时间:2011-05-09 10:16:45

标签: javascript jquery html select

我有以下选择表单元素,我想将rateit jquery plugin应用于它。

<select class="test" id="Rating" name="Rating">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
</select>

我尝试使用$("select.test").rateit();来应用插件,但是尽管fireQuery显示数据附加了select元素,但没有效果,我仍然留下一个选择框,而不是一行星

修改

包含CSS文件

Here is the page in question

1 个答案:

答案 0 :(得分:2)

你使用的插件错了。请参阅非常简单的示例:http://jsfiddle.net/rudiedirkx/ZuJ2k/

select必须在那里,但您在调用插件时仍需要引用div$('div#rating2').rateit();

div然后引用select并带有数据属性:data-rateit-backingfld="select#Rating"

修改
实际上看起来你根本就没有使用插件?你在哪里打电话给插件?

修改
这是你的代码:

rateItDiv = $('<div class="rateit" data-rateit-backingfld="#Rating"></div>');
$("div#ReviewInputZone select.test").after(rateItDiv);
$('div#rateit').rateit();

在最后一行,您引用div#rateit,但div不存在。您刚刚创建了div.rateit,而不是div#rateit。将其中任何一个更改为另一个,它应该工作。我保留#,因为它稍快一点(但你必须确定页面上只有一个这样的评分下拉菜单。)

所以新的第一行:

rateItDiv = $('<div id="rateit" class="rateit" data-rateit-backingfld="#Rating"></div>');

修改
此外,您可以在更改任何代码之前对其进行测试。只需打开Javascript控制台(FF中的Firebug或Chrome中的开发人员工具),然后输入:jQuery('div.rateit').rateit();