2014-10-07 32 views
0

我在這裏和其他地方尋找了大量的材料約縮略圖鏈接到圖片庫網絡上的其他圖片,但我覺得我失去了一些東西簡單,希望你能幫幫我。該用途選擇一組縮略圖圖像以基於點擊按鈕進行顯示。我從mysql數據庫中檢索縮略圖。到現在爲止還挺好。在點擊縮略圖,我想以顯示與該縮略圖,併爲此多個其他圖像,我使用jQuery腳本像這樣:從數據庫縮略圖圖片庫,各相關

<script type="text/javascript" > 
     $(document).ready(function(){ 
     $("img").on("click",function(){ 
      var $thumb_name = $("img").attr("src"); 
      $.ajax({ 
        type:"post", 
        url: "test.php", 
        data: {thumb_name:'$thumb_name'}, 
        success: function(data) { 
      $("#val").html(data); 
      } //data 
    }); //close ajax 
    }); //close onclick 
    }); //close document ready 
    </script> 

服務器端PHP腳本僅僅是

<?php 
     $thumb_name = $_POST['thumb_name']; 
     echo "the clicked thumb is $thumb_name"; 
    ?> 

我已經從數據庫中檢索到$ thumb_name(我可以在縮略圖圖像旁邊顯示它)。問題是,上面的代碼並沒有將它作爲一個值傳遞給服務器端,而是作爲字符串$ thumb_name。我正在與php腳本進行通信,因爲該字符串確實放在名爲'val'的div中。如果我能得到縮略圖的實際名稱,我知道如何顯示更多的圖像。

感謝您的任何幫助。

回答

0

您必須刪除引號$thumb_name

<script type="text/javascript" > 
    $(document).ready(function(){ 
    $("img").on("click",function(){ 
     var thumb = $(this).attr("src"); 
     $.ajax({ 
       type:"post", 
       url: "test.php", 
       data: {thumb_name: $thumb_name}, 
       success: function(data) { 
     $("#val").html(data); 
     } //data 
    }); //close ajax 
    }); //close onclick 
}); //close document ready 
</script> 
+0

好斑點,費邊。我以爲我嘗試過,但顯然不是。綠色檢查你 - 謝謝! – 2014-10-07 18:12:28

+0

@ Fabian - 如果你還在那裏,我的腳本有一個小問題。如果有多個縮略圖,腳本只會返回第一個的名稱,不管點擊了哪個。有任何想法嗎? – 2014-10-07 18:20:37

+0

@JoeJohnson你需要在你的函數中使用'this',檢查我的編輯。如果你不這樣做,'$('img')'返回頁面上所有圖像的數組,這種情況不是你想要的。 – FAS 2014-10-07 21:55:43