试图创建一个页面,递归调用一个函数,直到达到限制,然后停止。它使用ajax查询来调用一个外部脚本(它现在只是回声的“完成”),onSuccess或onFailure都没有触发,我发现很难找到问题。Ajax请求无效。 onSuccess和onFailure不会触发
这是它的JavaScript。在网页的标题中有一个包含请求数据的ajax.js文档的脚本。我知道ajax.js工程,我已经用它在其他网站
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>National Lettings Inventories</title>
<link type="text/css" href="/inv/default.css" rel="stylesheet" />
<script type="text/javascript" src="/inv/includes/swfobject.js"></script>
<script type="text/javascript" src="/inv/includes/ajax.js"></script>
<script type="text/javascript">
swfobject.registerObject("myFlashContent", "9.0.0");
</script>
</head>
<body onload="start()">
<div id="topBar">
<div class="logo">
</div>
</div>
<div id="Body">
<script type="text/javascript">
<!--
var rooms = 1;
var items = 0;
var ccode = "9999/1";
var x = 0;
function echo(string,start){
var ajaxDisplay = document.getElementById('ajaxDiv');
if(start)
{ajaxDisplay.innerHTML = string;}
else
{ajaxDisplay.innerHTML = ajaxDisplay.innerHTML + string;}
}
function locations()
{
echo("Uploading location "+x+" of " + rooms,true);
Ajax.Request("Perform/location.php",
{
method:'get',
parameters: {ccode: ccode, x: x},
onSuccess: function(reply)
{alert("worked");
if(x<rooms)
{
x++;
locations();
}
else
{
x=0;
echo("Done",true);
}
},
onFailure: function()
{alert("not worked");
echo("not done");
}
});
alert("boo");
}
function start()
{locations();}
//-->
</script>
Uploading
<div id='ajaxDiv'>
</div>
</div>
<div class="link" id="bottom">
<a href="index.php" ><img src="/inv/images/back.gif" class="link" alt="BACK"/></a>
</div>
<div id="bottomBar">
<p>Copyright © 2010 National Lettings Inventories</p>
</div>
</body>
</html>
歌剧错误控制台
JavaScript - http://localhost/inv/Upload/upload.php
Event thread: load
Error:
name: TypeError
message: Statement on line 89: Cannot convert undefined or null to Object
stacktrace: n/a; see opera:config#UserPrefs|Exceptions Have Stacktrace
任何帮助或建议将是最赞赏。
编辑:添加整个页面的源代码,世界上没有线89这里虽然
什么Ajax库您使用?你看到你的回声呼叫吗? – mojbro 2010-03-24 11:06:06
不是回声呼叫不会发生在第一个之外。并没有任何警报工作。 了AJAX脚本我用的是 /*原型JavaScript框架,版本1.6.1 *(C)2005-2009萨姆·斯蒂芬森 * *原型是自由发布的,基于MIT式的授权条款。 *有关详细信息,请参阅原型网站:http://www.prototypejs.org/ * * ------------------------- ------------------------------------------------- */ – Kye 2010-03-24 11:17:40
retag:added prototypejs – 2010-03-24 11:27:48