【发布时间】:2013-01-02 04:56:53
【问题描述】:
我正在通过普通方式在 Firefox 中通过 XMLHttpRequest 读取文本文件,该文本文件由单行图片文件名组成,并用管道符号 ('|') 分隔。 最后一切正常,我的图像列表被读取,我可以很好地解析它并加载我的图片。
这里是好奇的代码。
bilderListeDatei.open("GET","./bilder/liste?nocachetrick="+jetzt.getTime(),true);
bilderListeDatei.onreadystatechange = function ()
{
if (bilderListeDatei.readyState === 4)
{
if (bilderListeDatei.status === 200)
{
bilderListe = bilderListeDatei.responseText.split("|");
elementeZuLaden += bilderListe.length;
for(var i in bilderListe)
{
var j = bilder.push(new Image());
bilder[j-1].onload = function()
{
elementeGeladen++;
if(elementeZuLaden == elementeGeladen){elementeLadenFertig = true;}
}
bilder[j-1].src = "./bilder/" + bilderListe[i];
//alert(j);
}
}
}
}
如前所述,语法错误是在我的文本文件中产生的,而不是代码,它可以完美运行。 知道如何摆脱该错误消息(被程序的其余部分忽略)吗?
编辑: 错误消息,因为它在评论中被弄乱了:
Zeitstempel: 18.01.2013 14:15:01
Fehler: Syntax-Fehler
Quelldatei: http://192.168.2.102/seitenbastel/bilder/liste?nocachetrick=1358514901070
Zeile: 1, Spalte: 1
Quelltext:
65.jpg|67.jpg|69.jpg|71.jpg|73.jpg|75.jpg|77.jpg|79.jpg|81.jpg|83.jpg|85.jpg|87.jpg|89.jpg|91.jpg|93.jpg|95.jpg|97.jpg
【问题讨论】:
-
确切的错误信息是什么?你真的不应该在数组上使用 for in 循环。
-
编辑进OP,评论区不喜欢排版。对不起,德语浏览器。 ;)
-
如果您将
if (bilderListeDatei.status === 200)中的内容替换为仅表示您在那里的控制台语句,是否会产生错误?清除缓存有什么不同吗? -
不,只有警报没有错误(“heyho”);在那里。清除缓存也无济于事。
-
所以开始取消注释 if 语句中的行,看看哪一行抛出了错误。
标签: javascript ajax firefox xmlhttprequest