Есть JS и небольшая форма:
Свернутый текст
<div id='wait'></div>
<input type='text' id='field'><br>
<input type='button' value='Отправить' onClick="Send()">
<script>
function Send()
{
var link;
var param;
var txt = document.getElementById('field').value;
if(txt=="") {alert("Поле не заполнено"); return false;}
if(window.XMLHttpRequest) {link = new XMLHttpRequest();}
else
{if(window.ActiveXObject)
{
var XMLHTTP = ["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
for(i=0; i<4; i++)
{
try{link = new ActiveXObject(XMLHTTP[i]); break;}
catch (e) {}
}
}
}
if(!link) {alert("Извините, но Ваш браузер не поддерживает Ajax"); return false;}
param = "string="+encodeURIComponent(txt);
link.open("POST","/jquery.php","true");
link.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
link.onreadystatechange = function() {DataRequest(link);}
link.send(param);
document.getElementById('wait').innerHTML = "<img src='/images/loader.gif' width='12'>Загрузка...";
}
function DataRequest()
{
if(link.readyState == 4)
{
if(link.status == 200)
{
var wait = link.responseText;
document.getElementById('field').value=" ";
document.getElementById('wait').innerHTML = wait;
}
}
else
{
document.getElementById('wait').innerHTML = "Ошибка";
}
}
</script>
В этом же каталоге есть jquery.php:
<?php
Header('Content-type: text/html; charset=utf-8');
if($_POST['string'])
{echo "Запрос получен";}
else {echo "Данные не получены";}
?>
Но крутилка с надписью "Загрузка" никак не пропадает :unsure: Опера ошибок не нашла.
Помогите разобратся, в чем тут дело
Спустя 9 часов, 55 минут, 58 секунд (1.06.2011 - 07:48) Michael написал(а):
Ну вот первое несоответствие, которое видно:
- параметр пропустил
{DataRequest(link);}
DataRequest()
- параметр пропустил
Цитата |
if($_POST['string']) |
Наверное все таки
if (isset($_POST['string']))
?
Спустя 1 час, 29 минут, 16 секунд (1.06.2011 - 09:17) Guest написал(а):
Цитата (Michael @ 1.06.2011 - 04:48) | ||
Наверное все таки if (isset($_POST['string'])) ? |
это не принципиально...
Спустя 7 минут, 9 секунд (1.06.2011 - 09:24) Michael написал(а):
проверять надо все равно. В случае ТС empty все же лучше будет
Спустя 7 минут, 20 секунд (1.06.2011 - 09:31) nugle написал(а):
Выше был я))
Цитата |
проверять надо все равно |
здесь полностью согласен
а if($var) и if(isset($var)) одинаковы по выполнению ведь.
Спустя 3 минуты, 56 секунд (1.06.2011 - 09:35) Michael написал(а):
nugle, нет, не одинаковы. Если $var не существует то if($var) выдаст нотис. Плюс логика совсем другая ...
_____________
Курс валют