2010-07-23 75 views
0

遍歷數組,我打印每個迭代的div內容。 只要用戶點擊任何div內容,就會出現一個彈出窗口,並在數組彈出框中顯示相應的內容。彈出的問題:沒有顯示正確的相應內容

下面

是我的代碼,

foreach ($email as $client) 
{ 

       echo "<div class = 't'> Show more....... </div>"; 
       echo "<div class='popup_msg'>"; 
       echo $client['Email']['body']; 
       echo "</div>"; 

} 

javascript代碼如下

jQuery(document).ready(function(){ 

jQuery('.t').click(function(e) 
{ 
    var height = jQuery('.popup_msg').height(); 
    var width = jQuery('.popup_msg').width(); 
    leftVal=e.pageX-(width/1.5)+"px"; 
    topVal=e.pageY-(height/13)+"px"; 

    jQuery('.popup_msg').css({left:leftVal,top:topVal}).show(); 
}); 

jQuery('.popup_msg').click(function(e) 
{ 
jQuery('.popup_msg').fadeOut('fast'); 
}); 


}); 
在上面的代碼

,我想要實現的是,每當用戶點擊與T類股利時,相應的客戶端$ [「電子郵件」] [「身體」]應該出現在彈出

回答

0

的問題是,你選擇的所有.popup_msg,不僅需要一個匹配。 (「T」)。使用find()方法來獲得正確的彈出式在$單擊功能:

jQuery('.t').click(function(e) 
{ 
     var popup_msg = jQuery(this).find('.popup_msg'); 
     var height = popup_msg.height(); 
     var width = popup_msg.width(); 

     leftVal=e.pageX-(width/1.5)+"px"; 
     topVal=e.pageY-(height/13)+"px"; 

     popup_msg.css({left:leftVal,top:topVal}).show(); 
}); 

注:我沒有測試此代碼,它可能不是100%正確的,但希望你明白我的意思。