increment jquery for foreach php


increment jquery for foreach php

我有一个foreach:

<?php foreach($news as $key => $new) : ?>
    <div class="search-img img-id<?php echo($key); ?>" style="display:none;">
        <img alt="<?php echo($new->n_title); ?>" src="<?php echo base_url(); ?>uploads/<?php   echo($new->n_image); ?>" />
    </div>
<h4><span class="search-name<?php echo($key); ?>"><?php echo($noutate->n_title); ?></span></h4>
<?php endforeach; ?>

这个脚本:

<script>
$().ready(function(){
     $(".search-name<?php echo($key); ?>").hover(function(){$(".img-id<?php echo($key); ?>").fadeIn(100);},
         function(){$(".img-id<?php echo($key); ?>").fadeOut(80);});
     });
</script>

而且,正如我所看到和知道的,jquery不喜欢php:)我应该如何让这些类的数字递增?像search-name0、search-name1、search-name2。。。。等

谢谢!

您最好使用Jquery的$(this),并将您的ID存储在rel标签中:

<h4><span class="search-name" rel="<?php echo($key); ?>">

并以这种方式使用:

<script>
$().ready(function(){
$(".search-name").hover(function(){
 var target_id = $(this).attr('rel');
 $(".img-id"+target_id).fadeIn(100);},
 function(){$(".img-id"+ target_id).fadeOut(80);
 });
 });
 </script>

通过这种方式,您可以与PHP更加解耦。