2012-12-30 180 views
2

代码:关闭,for循环

function updateProfil() { 
    $.getJSON("./index_logg2.php", null, processCustom); 
} 

function processCustom(data) { 
    $.each(data, function(k, v) { 
    $(".panel").append('<center><img src="images/custom/'+ v +' "title="Click to set it" "></center><br />'); 
    /* 
    $(".panel").click(function() { 
     var data= ??? 
     $.post("./index_logg2.php", { data: ??? }, updateProfil); 
    }); 
    */ 
    }); 
} 

我能够动态展现图像,但我希望能够在单击图像时捕捉(动态)图像名称。

我知道我必须使用1. javascript闭包,2. for for循环inseatad。包含图像名称的JSON看起来像:

["1.jpg","2.png","3.gif","somename.jpg", "someothername.jpg" .............] 

您会帮我解决这个问题吗? 预先感谢您!

回答

0

当你想点击的图像时,你可以做这样的事情发生的事情:

$("img").click(function() { 
     alert("you clicked "+this.src); 
    }); 

这里是一个演示:

http://codepen.io/hoganlong/pen/gLleJ

对于刚刚在一个项目您可以使用div命名的面板:

$("#panel img").click(function() { 
     alert("you clicked "+this.src); 
    });