2012-03-16 36 views
0

我遇到了一個JavaScript彈出的問題。我想彈出來顯示圖像原因/標題。在彈出的javascript中顯示圖像標題?

任何人都知道該怎麼辦?

代碼:提前

<? 
    $badgesql = mysql_query("select * from usr_badge where user = '$_SESSION[usr_name]'"); 
    $user = mysql_query("select * from usr_users where username = '$_SESSION[usr_name]'"); 
    $usr = mysql_fetch_array($user); 
    $vipsql = mysql_query("select * from usr_vip where userid = '$usr[id]'"); 
    $vipcheck = mysql_num_rows($vipsql); 
    $badgecheck = mysql_num_rows($badgesql); 
    $checkit = $badgecheck + $vipcheck; 
    if($checkit==0) 
    echo("You have 0 Badges"); 
    if($badgecheck!=0) 
    { 
    while($badge = mysql_fetch_array($badgesql)) 
    { 
    echo('<img src="/css/badges/'.$badge[badge].'" onclick="alert('.$badge[reason].');" />'); } 
    } 
    //Display VIP Badges 
    if($vipcheck!=0) 
    { 
    $vipbadge = mysql_fetch_array($vipsql); 
    $vip1 = mysql_query("select * from usr_vipdb where id = '$vipbadge[vipid]'"); 
    $vip2 = mysql_fetch_array($vip1); 
    echo('<img src="'.$vip2[url].'" alt="This user is a VIP!" />'); 
    } 
    ?> 

謝謝!

+0

究竟是什麼問題? – JJJ 2012-03-16 11:06:27

+0

嘿Juhana。那麼上面的代碼的作品,但它不會顯示在一個JavaScript彈出圖像的標題。我希望能夠點擊圖片,彈出窗口會顯示標題/原因。 – 2012-03-16 11:07:51

+0

你使用任何插件來顯示彈出 – Nemoy 2012-03-16 11:27:10

回答

1

問題是你需要一些在你的alert()報價。

echo('<img src="/css/badges/'.$badge['badge'].'" onclick=\'alert("'.htmlentities($badge['reason']).'");\' />'); 

此外,$badge[reason]是不好的做法(除非原因是,我不認爲這是一個常數)。使用上面例子中的單引號。

最後,在將內容打印到HTML時使用htmlentities()

+0

這個沒有錯誤,但是當你點擊圖像它甚至不會彈出。什麼都沒有發生! – 2012-03-16 11:47:12

+0

@NicholasPandie我的錯誤,我已經修改了編輯答案。 – MrCode 2012-03-16 12:01:10

0

內聯JavaScript並不完全適合。當你echo字符串的onclick屬性將包含看起來像值:

alert(image reason); 

你需要用引號括圖像的理由爲它正常工作。因此,您的代碼應該如下所示:

echo '<img src="/css/badges/'.$badge[badge].'" onclick="alert(\''.$badge[reason].'\');" />'