2009-06-12 5 views
1

Maintenant, pour une raison quelconque, je ne peux pas obtenir ce code pour travailler Lorsque je déplace la souris sur < tr id = '$ id'> je veux que le # remove_ $ id soit affiché, puis caché lorsque la souris est déplacé horsPhp jquery souris sur l'aide

jQuery code:

$(function() { 

var id = this.id; 

$("tr").hover(function() { 

$("#remove_" + id).show(); 

}, function() { 

$("#remove_" + id).hide(); 

}); 

}); 

PHP cODE:

$result = mysql_query("SELECT * FROM wall WHERE uid='$myid' ORDER BY id DESC") or die (mysql_error()); 

while ($row = mysql_fetch_array($result)) { 

$id = $row['id']; 

$uid = $row['uid']; 

$fid = $row['fid']; 

$action = $row['action']; 


echo "< table width='467' border='0' align='left' cellpadding='0' cellspacing='0'> 

    < tr id='wall_$id'> 

    < td width='18' height='25'>&nbsp;< /td> 

    < td width='396' valign='top' class='txt'>RickStar has upload new photos. - < span class='comment'> 

< a href='#'>Comment< /a>< /span>< br />< /td> 

    < td width='53' valign='top'>< span class='txt'> 

     < div id='remove_$id' class='mydiv'>Remove< /div> 

    < /span>< /td> 

    < /tr> 

< /table>"; 


} 

Répondre

2

Changer votre code jQuery à ceci:

$(function() { 
    $("tr").hover(function() { 
     var id = this.id.split('_').pop(); 
     $("#remove_" + id).show(); 
    }, function() { 
     var id = this.id.split('_').pop(); 
     $("#remove_" + id).hide(); 
    }); 
}); 

Cela devrait le faire. Here's a working example if you need more help.

Votre code ne fonctionnait pas à cause de deux raisons:

  • Réglage de l'ID trop tôt, en dehors de la fonction de vol stationnaire this est soit défini ou non ce que vous pensez.
  • Vous devez diviser l'ID <tr> par _ pour obtenir l'ID réel, puis l'utiliser pour accéder au <div>.
0

Vous passez la souris sur le td, pas le tr.

+0

? ... TR prend en charge: hover en CSS et mouseover/mouseout en JS. –

Questions connexes