2013-03-06 1 views
2

Я использую JQuery RateIt плагин с дополнительной кнопкой мыши. Так что в моем проекте я показываю рейтинг ресторанов с этим плагином по умолчанию. Я показываю первые 5 баллов. Затем, после 5 записей, я показываю другое содержимое через ajax, поэтому в содержании, закодированном через рейтинг ajax, не отображается, я использую режим readonly ..если кто может помочь заранее спасибо Не могу получить значение в div-классе = "rateit" режим readonly после 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

+0

Может вам почтовый индекс? – mrsrinivas

+0

Не можете помочь, не видя код? –

+0

@MRSrinivas и Edwin здесь я разместил код –

ответ

2

В $ обработчиком .post успеха вы должны ссылаться на rateit снова через JavaScript после добавления в HTML так:

$("ol#updates").append(html); 
$(".rateit").rateit(); 
+0

извините ... получил то же самое результат все еще звезды не наступают –

+0

@NishantLad только для подтверждения - divs загружаются правильно через ajax, но плагин rateit не отображает звезды для динамически загружаемых динамиков, правильно? – mccannf

+0

div загружен coorectly, но он не вызывает плагин jquery. Я видел эту ошибку через контрольный элемент Uncaught TypeError: Object [object Object] не имеет метода 'rateit' –

-1

Заменить $(this_tag) либо this_tag, либо $(this) в вашем вызове ajax.

+0

проблема не там ... хотя я ее изменил ... Проблема в скорости div-класса не использует плагин для тарификации ... я выделил код –

-1

Вы должны использовать var this_tag = this; вместо использования var this_tag = $(this); или попробовать var $(this_tag) = $(this);

+0

проблема не там ... хотя я ее изменил ... Проблема в скорости div-класса не использует плагин для тарификации ... я выделил код –