为什么索引变量不';不适合javascript数组?

为什么索引变量不';不适合javascript数组?,javascript,jquery,html,html5-canvas,jquery-events,Javascript,Jquery,Html,Html5 Canvas,Jquery Events,我已经创建了一个按钮(新建窗口),当它被按下时,它会在html中附加一个带有图像的按钮 $( '#new_a_window').bind('click',function(){ $('#story_pages').append('<div><button value="'+window_value+'" onclick="reload_to_canvas(this.value) " ><img id= "w'+window_value+'" src="..

我已经创建了一个按钮(新建窗口),当它被按下时,它会在html中附加一个带有图像的按钮

$( '#new_a_window').bind('click',function(){
    $('#story_pages').append('<div><button value="'+window_value+'" onclick="reload_to_canvas(this.value) "  ><img id= "w'+window_value+'" src="../pic/white_img.png" width="100px", height="100px"/> </button></div>');
    window_value= window_value+1;   
});
问题是:这行不通。(将dataURL的图像重新绘制到画布上)经过多次测试后,我 找到问题的不是关于画布的drawImage方法

这是dataURLindex的问题

因为我尝试将参数dataURLindex替换为 整数,如:0、1、2或3。。。还有这项工作。 但是当我使用
变量(dataURLindex)
作为索引时,它再次变得无效。 奇怪的是,当我发出警报时(img_dataURLs[dataURLindex]) 我可以看到内容。。。和
警报(dataURLindex)
显示正确的数字


我真的找不到其他可能的故障。请提供任何建议。

如果改用
write\u back\u to\u canvas.onload=function(){…}
怎么办?它与你的症状没有直接关系,但它有时起作用可能是巧合。@pimvdb不。。。它无法工作。请检查
dataURLindex
的类型,可能是字符串:
警报(dataURLindex的类型)
@Teemu这是一个字符串,但在几个测试中,我尝试替换write_back_to_canvas.src=img_dataURLs[dataURLindex];将_写回_canvas.src=img_dataURLs[parseInt(dataURLindex,10)];它仍然不能工作。那么什么是
img\u数据URL
?它是如何定义的?
var write_back_to_canvas;
function reload_to_canvas(dataURLindex){    
    write_back_to_canvas = new Image(); //to new a object each time.        
    alert(dataURLindex);//check the dataURLindex content.
    current_page=dataURLindex; 
    write_back_to_canvas.src= img_dataURLs[dataURLindex];
    context.drawImage(write_back_to_canvas,0,0);
}