禁用JQuery平衡评级星级插件悬停并单击效果

时间:2018-09-27 10:44:53

标签: jquery ajax css3

我正在使用Barrating jquery插件,该插件可以对任何帖子进行评分并将评分保存到数据库中。

我想要的是,如果任何帖子已经在数据库中具有评级,只是不允许悬停并选择任何星级。只需显示我们从数据库中获得的信息即可。例如,如果帖子的评级为4,则它应该只显示4星。

您可以在下面看到我的示例链接。

http://dev.fingertips-solutions.com/clients/test/

这是我的代码段。您可以通过查看源代码查看所有其他代码和链接。

<script type="text/javascript">
        $(function() {
            $('.rating').barrating({
                theme: 'fontawesome-stars',
                onSelect: function(value, text, event) {

                    // Get element id by data-id attribute
                    var el = this;
                    var el_id = el.$elem.data('id');

                    // rating was selected by a user
                    if (typeof(event) !== 'undefined') {

                        var split_id = el_id.split("_");

                        var postid = split_id[1];  // postid

                        // AJAX Request
                        $.ajax({
                            url: 'rating_ajax.php',
                            type: 'post',
                            data: {postid:postid,rating:value},
                            dataType: 'json',
                            success: function(data){
                                // Update average
                                var average = data['averageRating'];
                                $('#avgrating_'+postid).text(average);
                            }
                        });
                    }
                }
            });
        });

        </script>

此设定值

<!-- Set rating -->
                            <script type='text/javascript'>
                            $(document).ready(function(){
                                $('#rating_<?php echo $postid; ?>').barrating('set',<?php echo $rating; ?>);
                            });

                            </script>

1 个答案:

答案 0 :(得分:0)

在配置中必须设置这些选项

$('.rating').barrating({
    theme: 'fontawesome-stars',
    hoverState: false,
    readonly: true,
});