Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   не выдает ошибку (https://javascript.ru/forum/misc/68490-ne-vydaet-oshibku.html)

snakejava 19.04.2017 22:15

не выдает ошибку
 
Что я хочу?
Если юзер не заполнил поле в котором нужно указать адрес но нажал на отправку формы должна вылезти ошибка и форма не должна отправится.

(function() {
"use strict";
function changeMsg() {
document.getElementById('subb').onsubmit = function() {
if (document.getElementById('mail').value == "") {
document.getElementById('error').innerHTML = "Please enter your email";
return false;
} else {
document.getElementById('error').innerHTML = "";
return true;
}
};
}
})();


код не работает,браузер не показывает ошибок... Jslint показывает 21 ошибку. Чувство что я совсем все не правильно написал

рони 19.04.2017 22:52

Цитата:

Сообщение от snakejava
код не работает

работает, но его надо запустить
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

snakejava 19.04.2017 23:04

У меня на html странице перед закрывающим body тагом стоит
<script src="april15form.js"></script>

рони 19.04.2017 23:11

snakejava,
было бы форматирование, было бы 2 варианта решения проблемы не запуска
запустите код функциии(которая нафиг не нужна) и будет вам счастье.

snakejava 19.04.2017 23:18

запустил и все равно не работает...

(function() {
"use strict";
function changeMsg() {
document.getElementById('subb').onsubmit = function() {
if (document.getElementById('mail').value == "") {
document.getElementById('error').innerHTML = "Please enter your email";
return false;
} else {
document.getElementById('error').innerHTML = "";
return true;
}
};
}
window.onload = function() {
changeMsg();
}
})();

рони 19.04.2017 23:23

snakejava,
смотрите что у вас не так
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">


</head>

<body>  <p id="error"></p>
 <form id="subb" action="http://">
  <input name="" id="mail">
<input name="" type="submit" value="go"> 
 </form>
<script>
(function() {
"use strict";
function changeMsg() {
document.getElementById('subb').onsubmit = function() {
if (document.getElementById('mail').value == "") {
document.getElementById('error').innerHTML = "Please enter your email";
return false;
} else {
document.getElementById('error').innerHTML = "";
return true;
}
};
}
window.onload = function() {
changeMsg();
}
})();

  </script>
</body>
</html>

рони 19.04.2017 23:26

snakejava,
или так
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">


</head>

<body>  <p id="error"></p>
 <form id="subb" action="http://">
  <input name="" id="mail">
  <input name="" type="submit" value="go">
 </form>
<script>
(function() {
"use strict";
document.getElementById('subb').onsubmit = function() {
if (document.getElementById('mail').value == "") {
document.getElementById('error').innerHTML = "Please enter your email";
return false;
} else {
document.getElementById('error').innerHTML = "";
return true;
}
};
})();

  </script>
</body>
</html>

snakejava 19.04.2017 23:33

У меня ошибки в яваскрипте или все таки в html/css?

рони 19.04.2017 23:41

snakejava,
в js ошибок нет -- если скрипт внизу страницы и все id на месте, должно работать.


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