2010-02-12 1 views
0

У меня есть таблица, в которой отображаются предложения пользователей, которые они получили при нажатии кнопки read more ajax, и в базе данных предложение помечено как прочитанное. В настоящее время, если предложение новое, я показываю закрытый конверт, если он читается, я показываю открытый конверт, однако я могу заставить его перезагрузить таблицу, когда пользователь нажимает ссылку «Читать дальше», чтобы добавить новый класс. В настоящее время он работает наполовину, они читают больше, и все предложения исчезают, но мне также нужен конверт.перезагрузите таблицу после ссылки Нажмите, чтобы обновить результаты

<table> 
     <?php 
      $colours = array("#f9f9f9", "#f3f3f3"); $count = 0; 
      if(isset($newSuggestions)) { 
       foreach($newSuggestions as $row) { 
       if($row['commentRead'] == 0) { 
        $newRow = "new"; 
       } else { 
        $newRow = "old"; 
       } 
     ?> 
         <tr id="a<?=$row['thoughtId'];?>" bgcolor="<?php echo $colours[$count++ % count($colours)];?>"> 
     <?php 
          echo "<td class='".$newRow."'>".substr($row['thought'], 0,50)."...</td>"; 
          echo "<td class='read'><a href='".base_url()."thought/readSuggestion/".$row['thoughtId']."' class='readMore'>Read More</a>"; 
         echo "</tr>"; 
        } 
       } else { 
       echo "You have no new suggestions"; 
       } 
     ?> 
     </table> 
    </div><!--/popular--> 

    </div><!--/widget--> 
     <div id="readMore"> 

     </div> 

<script type="text/javascript"> 
    $(document).ready(function() { 
    //alert("hello"); 
    $('#tabvanilla').tabs({ fx: { opacity: 'toggle', height:'toggle' } }); 
     $('a.readMore').click(function(){ 
      $('#readMore').fadeIn(500); 
      var url = $(this).attr('href'); 

      $.ajax({ 
       url : url, 
       type : "POST", 
       success : function(html) { 
        $('#readMore').html(html) 
       }, 
       complete : function(html) { 
        $('table').html() 
       } 
      }); 
      return false; 
     }); 
}); 
</script> 

ответ

1

В JavaScript, где вы открываете/заполнить полные предложения, вы можете изменить конверт изображения, а также, используя что-то вроде:

$('#envelope').attr('src', 'src/to/envelope.png'); 

Я не вижу IMG теги, так что вам нужно добавить один и заполнить идентификатор, чтобы он был найден JavaScript.

BTW: Наличие HTML и PHP на тех же строках/частях делает общее очень нечитаемым. Используйте только <?php ... ?> для больших блоков кода PHP, в противном случае используйте echo (или что-то подобное).

Смежные вопросы