我試圖在幾個畫布上繪製返回的ajax請求的元素,但它只是將所有圖像繪製到第一個畫布。使用jQuery在幾個不同的畫布元素上繪製圖片
如何訪問成功函數中的每個畫布元素來繪製圖像?
jQuery的
$(document).ready(function() {
$('.citizen').each(function(i, citizen) {
$.ajax({
type : 'GET',
url : 'getCitizenPhoto.htm',
data : {
socialSecurityNumber : $(citizen).val()
},
dataType : 'text',
success : function(data,i) {
var image = new Image();
image.src = data;
image.onload = function() {
var ctx = document
.getElementById("#photoCvs")
.getContext('2d');
ctx.drawImage(image, 0, 0, 200, 200);
}
}
});
});
HTML
<p>Victims</p>
<c:forEach items="${victimMonitoringList}" var="victims">
<div id="victim_row">
<input class="citizen" id= "socialSecurityNumber" value= "${vitims.socialSecurityNumber}"/>
<canvas id="photoCvs" class="canvas" height="200" width="200"></canvas>
</div>
<div id="criminals">
<c:forEach items="${criminalMonitoringList}" var="criminals">
<div id="criminal_row">
<p>Criminals</p>
<input class="citizen" id= "socialSecurityNumber" value= "${criminal.socialSecurityNumber}"/>
<canvas id="photoCvs" class="canvas" height="200" width="200"></canvas>
</div>
這仍然將所有在一個帆布的照片,我可以看到所有的正在繪製到同一個畫布的圖像 – devdar 2013-04-28 22:11:24
我有一個畫布,每個項目的類名稱= canvas – devdar 2013-04-28 22:12:17
id name = photoCvs – devdar 2013-04-28 22:12:34