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

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

20.12.2018, 15:04. Показов 1586. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru