Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   JavaScript работает только из дебаггера. (https://javascript.ru/forum/events/5604-javascript-rabotaet-tolko-iz-debaggera.html)

Krondor 26.10.2009 12:13

JavaScript работает только из дебаггера.
 
Добрый день, уважаемые Мастера JavaScript'а.
у меня такая проблема:
есть страничка, содержащая форму:
Код:

        <form name="CheckForm" class="hidden">
                <table border="1" bordercolor="black">
                <tr>
                        <td colspan="3">Создать новый бюджет:</td>
                </tr>
                <tr>
                        <td><button onClick="NewBud();">Чистым</button></td>
                        <td><button onClick="DefBud();">По умолчанию</button></td>
                        <td><a href="#" onClick="CloseForm();">Скрыть</a></td>
                </tr>
                </table>               
        </form>

к этой форме есть js-файлик с функциями:
Код:

function CloseForm() {
        document.CheckForm.className="hidden";
        return false;
}
function NewBud() {
        window.location="/index.php?mode=createbudget&submode=clean";
        return false;
}
function DefBud() {
        window.location="/index.php?mode=createbudget&submode=def";
        return false;
}

проблема вот в чем. если я просто открываю в мозилле эту страничку, и пробую нажать на любую кнопку на форме, то получаю банальную перезагрузку страницы. Мозилловская консоль ошибок молчит.
а вот если я использую FireBug и пробую пошагово пройти функции, которые должны перевести меня на другую страницу, то все работает замечательно и я получаю нужный мне результат.

вы не знаете, в чем тут может крыться проблема?? или что я делал не так7?

заранее благодарен за ответ.

Krondor 29.10.2009 11:31

маленькая поправка.
проблема оказывается возникает только при открытии страницы мозиллой. в ИЕ проблемы нет и редирект идет нормально.

может быть мозилла как-то не правильно понимает window.location??

e1f 29.10.2009 15:04

А если вместо window.location использовать window.location.href?

Krondor 29.10.2009 15:45

попробовал.. первый раз сработало нормально, второй и последующие разы опять как раньше. перезагрузка страницы и все. :(

e1f 29.10.2009 16:52

Всмысле? Что значит перезагрузка страницы? Она что так, что так перезагружается, в последующие разы у Вас href такой же, как и был до этого

Krondor 29.10.2009 17:03

смотри, у меня в JS файле написан редирект браузера на index.php с определенными параметрами. в реальности же у меня происходит редирект на index.php без параметров. т.е. если я нахожусь на index.php, то происходит то же самое, что и при нажатии на F5. если же я нахожусь на другой странице, то идет редирект на index.php без параметров и мне выдается index.php без параметров.
специально только что попробовал в IE - редирект нормальный со всеми параметрами.

e1f 29.10.2009 17:59

Krondor, попробуй
window.location.search = '?mode=createbudget&submode=def';

Krondor 03.11.2009 12:35

прошу прощения за столь долгое отсутствие:
в общем с проблемой вроде справился, причем справился очень неожиданным образом. у меня в форме было две кнопки и один мой знакомый сказал, что любая кнопка по определению(не знаю правда по какому) считается кнопкой Submit и соответственно вызывает событие Submit(т.е. в моем случае шел submit пустой формы, а т.к. у меня поле action пустовало - форма передавалась в ту же страницу, где и находилась сама - т.е. получалась своеобразная перезагрузка страницы). он посоветовал поменять кнопки на ссылки, что я и сделал. проблема исчезла. :)


Часовой пояс GMT +3, время: 01:13.