Всем привет.
Мне нужно заставить
АЯКС работать в цикле. Т.Е. есть парсер который лежит на сервере.
Браузер посылает запрос при помощи
АЯКС
1) отправка
2) прием полученного ответа от сервера (может занимать 4 с)
3) проверка значения, если все ок заново отправка!
Есть JS скрипт
<html>
<head>
<title>Парсер</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" language="javascript">
var parsing = {
from:0,
to:0,
number:0,
req: function(){
if(navigator.appName == "Microsoft Internet Explorer")
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
else
{
return new XMLHttpRequest();
}
},
}
parsing.Request = function(query){
this.req.open('post', 'parsing.php' , true );
this.req.onreadystatechange = this.Refresh;
this.req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
this.req.send(query);
}
parsing.Refresh = function(){
var a = this.req.readyState;
if( a == 4 )
{
var b = this.req.responseText;
var c = document.getElementById('ajax').value;
document.getElementById('ajax').innerHTML = b + <br/> + c;
this.number++;
if(this.number < this.to){
this.Pusk(this.number);
}
}
}
parsing.Pusk = function(number){
var query;
query ='value='+encodeURIComponent(number);
this.Request(query);
this.Refresh();
}
parsing.start = function(){
this.from = document.getElementById('from').value - 0;
this.to = document.getElementById('to').value - 0;
this.number = this.from;
this.Pusk(this.number);
}
</script>
</head>
<body>
От <input type='text' id="from"/> до <input type='text' id="to"/>
<input type="button" onClick="parsing.start()" value="старт"/><br />
<div id="ajax"></div>
</body>
</html>
но при запуске скрипта выдает ошибку
Код:
|
this.req.open is not a function
this.req.open('post', 'parsing.php' , true ); |