Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
1 / 1 / 0
Регистрация: 08.08.2017
Сообщений: 72

Onsubmit не работает в Firefox

20.12.2018, 15:04. Показов 1611. Ответов 10

Студворк — интернет-сервис помощи студентам
Добрый день. Делаю сайт atlas.host1652635.hostland.pro/ Отправку формы делаю по
JavaScript
1
<form id="myForm3" onsubmit="call3()">
В функции call3() отправка данных на сервер по ajax. Но суть не в этом, в хроме и опере все работает нормально, но firefox не обрабатывает onsubmit, даже если туда обычный alert вставить, всеравно не отрабатывает. По нажатию происходит подстановка данных в адресную строку как при post запросе.
Как сделать, чтобы отправка происходила и в firefox.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.12.2018, 15:04
Ответы с готовыми решениями:

Не работает AJAX onsubmit(function();
Никак не могу заставить работать скрипт. Нужно чтобы он срабатывал по клику и передавал id в обработчик, и все возвращалось в HTML форме в...

Почему скрипт не работает в Chrome, а в Firefox и Opera работает?
Имеется обычный код JS, работающий в Firefox и Opera, но не работающий в Chrome. Кстати хотел ещё заметить, что alert() работает в...

Простейший код работает в MS IE, почему не работает в Mozilla, FireFox?
Приветствую. Вот собственно код: &lt;html&gt; &lt;head&gt;&lt;/head&gt; &lt;body&gt; &lt;input type=&quot;button&quot; value=&quot;set 1&quot; ...

10
 Аватар для atanov
640 / 481 / 172
Регистрация: 26.05.2016
Сообщений: 2,674
20.12.2018, 15:09
simatic007, а Вам лис обязателен? Gecko. понимаешь, довольно ущербный движок.
Ещё замечание - лучше обработчики навешивать в js скрипте. Сейчас считается, что вешать обработчик в html коде не "кошерно":

JavaScript
1
document.getElementById('myForm3').addEventListener('submit', call3);
0
1 / 1 / 0
Регистрация: 08.08.2017
Сообщений: 72
20.12.2018, 15:22  [ТС]
Конечно нужно, чтобы сайт во всех браузерах корректно работал. Кончено, firefox это процентов 10 от аудитории, но все-таки потеря клиентов.
0
 Аватар для atanov
640 / 481 / 172
Регистрация: 26.05.2016
Сообщений: 2,674
20.12.2018, 15:30
simatic007, тогда воспользуйтесь тем, что я Вам в посте №2 написал.
0
1 / 1 / 0
Регистрация: 08.08.2017
Сообщений: 72
20.12.2018, 15:35  [ТС]
Убрал onsubmit у формы. Добавил решение из поста 2, всеравно в хроме работает, а в мозилле не работает.
0
 Аватар для atanov
640 / 481 / 172
Регистрация: 26.05.2016
Сообщений: 2,674
20.12.2018, 15:45
чудеса, хотя. submit может перезагружать DOM. Щас скачаю ff, попробую у себя.

Добавлено через 6 минут
simatic007, так точно работает:

HTML5
1
2
<button id = "buttonOne">Click</button>
<script src = "134.js"></script>
JavaScript
1
2
3
4
5
document.getElementById('buttonOne').addEventListener('click', call3);
function call3(e)
{
    console.log(e.target.innerHTML);
}
submit перезагружает страницу, поэтому не работает.
0
1 / 1 / 0
Регистрация: 08.08.2017
Сообщений: 72
20.12.2018, 15:51  [ТС]
Спасибо
0
1 / 1 / 0
Регистрация: 08.08.2017
Сообщений: 72
21.12.2018, 11:07  [ТС]
Только сегодня проверил, не работает решение из п6, всеравно ничего не отправляется
0
 Аватар для atanov
640 / 481 / 172
Регистрация: 26.05.2016
Сообщений: 2,674
21.12.2018, 11:15
Цитата Сообщение от simatic007 Посмотреть сообщение
всеравно ничего не отправляется
Ну так надо отправить. Понятно что то, что я Вам предложил, это только бутафория - проверить клик. Дальше надо собственно отправку делать. Как у Вас реализована отправка? Обработчик на сервере?
0
1 / 1 / 0
Регистрация: 08.08.2017
Сообщений: 72
21.12.2018, 11:18  [ТС]
Да это я знаю, я как надо подставил. По событию click всеравно не идет отправка. В хроме опять же работает
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
document.getElementById('buttonOne').addEventListener('click', call3);
function call3(e) {
      event.preventDefault();
      var name = $("#name3").val();
      var index = $("#indeks").val();
      var phone = $("#mtel3").val();
      var email = $("#email3").val();
      var adress = $("#adress").val();
      var count = $("#count").val();
      $.ajax({
        type: "POST",
        url: "php/form-process3.php",
        data: "name=" + name +"&index=" + index +"&phone=" + phone + "&email=" + email + "&adress=" + adress + "&count=" + count,
        success: function (response) {
          if (response == 0) {
            alert("Не могу отправить сообщение");
          } else {
            $("#server--answer3").append("Сообщение отправлено");
          }
        }
      });
    }
0
 Аватар для atanov
640 / 481 / 172
Регистрация: 26.05.2016
Сообщений: 2,674
21.12.2018, 11:32
simatic007, а за каким event.preventDefault()? Перепишите Ваш код (например так без JQ):

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
document.getElementById('buttonOne').addEventListener('click', call3);
function call3()
{
    let dataToServer = new XMLHttpRequest();
    dataToServer.open('POST', 'php/form-process3.php', true);
    dataToServer.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    dataToServer.send(
                    'name=' + document.getElementById('name3').value
                    + '&index' + document.getElementById('indeks').value
                    + '&phone=' + document.getElementById('mtel3').value
                    + '&email=' + document.getElementById('email3').value
                    + '&adress=' + document.getElementById('adress').value
                    + '&count=' + document.getElementById('count').value
                    );
    dataToServer.onreadystatechange = statusReady;
            function statusReady()
            {
                if (dataToServer.readyState == 4)
                {
                    document.getElementById('server--answer3').innerHTML = 'Сообщение отправлено';
                }
                        }
}
в html'е уберите форму, оставьте только инпуты с id name3 и т.д.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.12.2018, 11:32
Помогаю со студенческими работами здесь

Скрипт работает в Opera и Firefox, но не работает в IE
В чём может быть проблема? Данный код не работает в IE (у меня 6 версия). Может существуют другие способы решения данной задачи:...

В MSIE 6 и Opera 8 все работает, а в Mozilla 1.6 и Firefox 1.0.6 работает только сообщение "qq!"
Привет. Есть такой вот простенький код: &lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN &lt;html&gt; ...

ResizeTo не работает в Firefox
Нужно изменить размер окна, делаю так window.onload = window.resizeTo(500, 500); В хроме и опере работает, в лисе нет. В консоли...

Срипт не работает в FireFox
Ребята подскажите пожалуйста по той же проблеме, при любом DOCTYPE не воркает следующий скрипт (только в лисе) var img = $('img'); ...

Скрипт не работает в FireFox
Здравствуйте, поставил на страницу скрипт &lt;input type='Button' value='Закрыть' OnClick='window.close();'&gt; Сначала работал без...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru