[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Асинхронное выполнение запросов (Ajax)
Miha
Вообщем в разработке применяю Аякс, все пишу сам, без всяких jQuery и т.п.
Допустим есть главная страница, на ней ссылка "Регистрация", по нажатию посылается запрос серверу (асинхронно) и появляется типа модульное окошко с формой. На этой форме есть <img src="captcha.php" >.
Проблема в том что позле закрытия окна регистрации
(... RegWin.parentNode.removeChild(RegWin); ...)
и повторения первого действия, т.е. открытие этого окна снова эта самая каптча не меняется, т.е. такая как в первое открытие.
Бывало такое что изображение генерировалось на второй раз, но не больше.
Почему так???
Ведь форма загружается с сервера по запросу, значит и captcha.php тоже должен заново генерировать изображение.. blink.gif



Спустя 27 минут, 53 секунды (5.02.2010 - 21:04) arlamar написал(а):
попробуй <img src="captcha.php?рандомное число" >

Спустя 20 минут, 13 секунд (5.02.2010 - 21:25) Miha написал(а):
Рандом только в аргументах или в самом скрипте тоже как-то?
Рандом я так понял через JS делается?

Спустя 7 минут, 39 секунд (5.02.2010 - 21:32) twin написал(а):
А как ты формируешь тег <img>?

Спустя 3 минуты, 54 секунды (5.02.2010 - 21:36) Miha написал(а):

<script language="JavaScript" type="text/javascript" src="../Lib/JSLib.js"></script>
<div
id="registration">
<form
action="javascript:Registration();" method="post" name="RegForm">
<p
align="center">Registrations</p><br>
<p>
Username: <input name="Username" type="text" class="fields" size="30" /></p>
<p>
Email: <input name="Email" type="text" class="fields" size="30" /></p>
<p>
Password: <input name="Password" type="password" class="fields" size="30" /></p>
<p>
Confirm: <input name="PasswordConfirm" type="password" class="fields" size="30" /></p>
<p ><img
src='Lib/secpic.php'/><input name="Captcha" type="text" class="fields" size="30" /></p>
<p
align="center">
<input
name="Close" type="button" value="Close" class="loginbut" onClick="removeElement('registration'); return false;" />
<input
type="submit" name="Submit" value="Enter" class="loginbut" />
</p>
</form>

</div>


Эта форма подгружается в index.php (асинхронно)

Спустя 23 минуты, 1 секунда (5.02.2010 - 21:59) twin написал(а):
Ну самый простой выход - сделать файлу с формой расширение php и прилепить хвост, как arlamar сказал

<img src='Lib/secpic.php?<?php echo time(); ?>'/>

Спустя 41 минута, 36 секунд (5.02.2010 - 22:41) Miha написал(а):
Блин! Чёта не работает dry.gif

Спустя 14 часов, 8 минут, 17 секунд (6.02.2010 - 12:49) Miha написал(а):
Все сделал! wink.gif

Спустя 4 минуты, 50 секунд (6.02.2010 - 12:54) Miha написал(а):
Вопрос:
Как сделать чтобы вставленный сценарий в этот самый подгружаемый файл с формой работал.

Т.е.

<script language="JavaScript" type="text/javascript" >
function
GetCaptcha(){
if(document.getElementById('CaptchaIMG'))
document.getElementById('CaptchaIMG').src = "Lib/secpic.php?"+(Math.floor(Math.random()*100));
}
</script>

<div
id="registration">
<form
action="javascript:Registration(); GetCaptcha();" method="post" name="RegForm">
<p
align="center">Registrations</p>
<p>
Username: <input name="Username" type="text" class="fields" size="30" /></p>
<p>
Email: <input name="Email" type="text" class="fields" size="30" /></p>
<p>
Password: <input name="Password" type="password" class="fields" size="30" /></p>
<p>
Confirm: <input name="PasswordConfirm" type="password" class="fields" size="30" /></p>
<hr>
<table
width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td
align="center"><img id="CaptchaIMG" src="" border="0" /><br><a href="#" onclick="GetCaptcha()" >Не видно</a></td>
<td>
Code: <input name="Captcha" type="text" class="fields" size="20" /></td>
</tr>
</table>
<p
align="center">
<input
name="Close" type="button" value="Close" class="loginbut" onClick="removeElement('registration'); return false;" />
<input
type="submit" name="Submit" value="Enter" class="loginbut" />
</p>
</form>

</div>


А то он работает только если
<script language="JavaScript" type="text/javascript" src="../Lib/JSLib.js" ></script>


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.