Работа Event.observe
На странице имеется хтмл-форма авторизации. На форму подвешивается обработчик
window.onload=function() { Event.observe('authform', 'submit', ALogon); } сама функция function ALogon() { new Ajax.Request ( "/include/ajax/login.php", { method: 'post', parameters: $('authform').serialize(true), onSuccess: function(xhr) { var result=xhr.responseXML; AuthSite(result); } } ); Event.stop(event); } function AuthSite(result) { window.open('/', '', 'menubar=yes,status=yes,resizeable=yes,scrollbars= yes,toolbar=yes,width=1024,height=768'); } Часть функции AuthSite я опустил как не имеющую смысловой нагрузки. Суть - после аякс-авторизации открывается новое окно, в котором работают уже авторизованные пользователи. С чем непонятным столкнулся. После авторизации открывается окно, и выплевывает джаваскрипт-ошибку на строке Event.observe('authform', 'submit', ALogon); Причем ошибка эта возникает исключительно в том случае, если window.open выполняется из процедуры. В остальных случаях, даже если window.open указать в хтмл-е как onClick на какую-то ссылку и нажать этиу ссылку - работает нормально. Как вылечил - втупую в хтмл <form method="post" action="/?action=auth" id="authform" onSubmit="ALogon();return false;"> и все работает как надо. Но. Хочется понять в чем дело. Кто может подсказать? |
какая ошибка?
|
Требуется объект.
|
максимально упрости свою страничку (но чтобы эта ошибка все еще возникала) и выложи сюда архив со всеми необходимыми файлами - посмотрим
|
Когда вы пытаетесь задать Event.observe ?
|
Часовой пояс GMT +3, время: 17:11. |