2

我正在使用带有查看更多按钮的Jquery RateIt插件。所以在我的项目中,我使用这些插件显示餐厅评级,默认情况下我显示前 5 个评级。然后在 5 条记录之后,我通过 ajax 显示其他内容,所以在通过 ajax 评级的内容中没有显示我使用只读模式。 .如果有人可以帮助提前感谢

foreach($list_review as $row): ?>
 <div class="user_reviews_data">
       <div class="width-20 float-left">
           <span class="padleft-10"><?php echo $row->User; ?> </span>
              <br/>
             <span class="padleft-10">
    **<div class="rateit" data-rateit-value="<?php echo $row->Rating;?>" data-rateit-ispreset="true" data-rateit-readonly="true"></div>**
    </span>
          <div class="muted padleft-10 float-left"><small><?php echo date('dS M Y' ,strtotime($row->CreatedDate)); ?></small></div>
           </div>
                 <div class="width-80 float-left"><?php echo $row->Feedback;?></div>
                        <span class="report_span"><a href="<?php echo site_url('report_form/index/review/'.$rest_detail->Id.'/'.$row->Id);?>" class="pop-up" data-element_id="<?php echo $row->Id; ?>">Report this Feedback <img src="<?php echo base_url();?>themes/images/FLAG_GREY.png"></a></span>    
                  </div>
        <?php 
            $msg_id=$row->Id;
            endforeach;?>  
                        </div>

        <div id="more<?php echo $msg_id; ?>" class="btn-container center_text morebox">
                        <a href="javascript:;" class="more btn orange_signup" id="<?php echo $msg_id; ?>" data-restid="<?php echo $rest_detail->Id; ?>" title="view more">View More</a>
          </div>

现在的jquery代码

/*view More Button*/
    $('.more').live("click",function() 
    {
        var this_tag = $(this);
        var ID = $(this).attr("id");
        if(ID)
    {
        $.post(siteUrl+"ajax/ajax_more",{lastmsg:ID,restid:$(this_tag).data("restid")},function(html){
        $("ol#updates").append(html);
        $("#more"+ID).remove();// removing old more button
        });
    }
    else
    {
        $(".morebox").html('The End');// no results
    }
    return false;
    });

我正在通过 ajax 添加内容查看更多按钮单击 ajax 代码与上面的代码相同 我正在使用这个插件http://www.radioactivethinking.com/rateit/example/example.htm

4

3 回答 3

2

在 $.post 成功处理程序中,您应该在附加 HTML 之后再次通过 JavaScript 调用 rateit,如下所示:

 $("ol#updates").append(html);
 $(".rateit").rateit();
于 2013-03-06T08:35:33.240 回答
-1

您应该使用var this_tag = this;而不是使用var this_tag = $(this); 或尝试var $(this_tag) = $(this);

于 2013-03-06T08:36:22.227 回答
-1

替换$(this_tag)this_tag或者$(this)在您的 ajax 调用中。

于 2013-03-06T06:35:45.050 回答