Показать сообщение отдельно
  #1 (permalink)  
Старый 01.03.2013, 19:26
Интересующийся
Отправить личное сообщение для MasterDmx Посмотреть профиль Найти все сообщения от MasterDmx
 
Регистрация: 16.02.2013
Сообщений: 21

Проблема со вставкой setTimeout в скрипт
Уважаемые знатоки, прошу вашей помощи.

Есть вот такой скриптик jQuery, который позволяет загружать PHP файл без перезагрузки страницы (aJax):

<script type="text/javascript">
var req = Create();

function ge(id)
{
    return document.getElementById(id);
}

function Create()
{  
    if(navigator.appName == "Microsoft Internet Explorer")
    {  
        req = new ActiveXObject("Microsoft.XMLHTTP");  
    }
    else
    {  
        req = new XMLHttpRequest();  
    }  
return req;  
}  

function Request(query)
{
    req.open('post', 'modules/online_kredit_v2.php' , true );
    req.onreadystatechange = Refresh;
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
    req.send(query);  
}

function Refresh()
{
    var a = req.readyState;  
  
    if( a == 4 )
    {   
        var b = req.responseText;
        document.getElementById('ajax').innerHTML = b;
    }
    else
    {  
        
        document.getElementById('ajax').innerHTML = '<br><center>Отправка.........</center>';
		
    }
}

/////Собераем все элементы формы которые будем отправлять
function Pusk()
{  
    var query;
	var txt11 = encodeURIComponent(ge('tovar1').value);
	var txt22 = encodeURIComponent(ge('cena1').value); 
	var txt33 = encodeURIComponent(ge('gorod1').value); 
    query = 'tovar1='+txt11+'&cena1='+txt22+'gorod1='+txt33; 
    Request(query);
}
</script>


Суть проблемы вот в чем, при нажатии на кнопку, скрипт будет подгружать PHP файл с информацией. Пока скрипт грузится, на экран выводится надпись "Отправка.........". Так вот, нужно сделать так, что бы эта надпись выводилась определенное кол-во времени, а только потом появлялась инфа из файла PHP.

Т.е. нужно добавить setTimeout в этот кусок кода:

function Refresh()
{
    var a = req.readyState;  
  
    if( a == 4 )
    {   
        var b = req.responseText;
        document.getElementById('ajax').innerHTML = b;
    }
    else
    {  
        
        document.getElementById('ajax').innerHTML = '<br><center>Отправка.........</center>';
		
    }


А именно, на сколько я понял в:

if( a == 4 )
    {   
        var b = req.responseText;
        document.getElementById('ajax').innerHTML = b;
    }


К сожалению, мои знания в JS очень малы, а времени изучить данный вопрос нету т.к. нужно решить эту проблему очень срочно, именно по-этому я прошу вашей помощи.
Заранее благодарен.
Ответить с цитированием