Тема: Атрибут required в полі text

Чому коли я надаю атрибут required полю text, всерівно спрацьовує скрипт навіть коли поля не заповнені ?
Повідомлення "Please fill in this field" з'являється, але скрипт (функція main) спрацьовує. Як цього уникнути ?

<form>
<input required type="text" name="month" id="month" />
<button onclick="main()">Добре</button>
</form>
Подякували: 221VOLT1

2 Востаннє редагувалося mike (12.12.2016 23:28:39)

Re: Атрибут required в полі text

через те, що потрібно вішати івент не на кнопку, а на форму

<form>
   <input required type="text" name="month" id="month" />
   <button type="submit">Добре</button>
</form onsubmit="main()">
(function(){
  console.log("called anonymously");
})()
Подякували: Betterthanyou, koala, 221VOLT3

3 Востаннє редагувалося Betterthanyou (12.12.2016 23:50:55)

Re: Атрибут required в полі text

Вже розібрався
Але чому зразу (навіть якщо написати onclick замість onsubmit) йде відправка даних (перезавантажується сторінка, і методом GET передаються дані) в мене з отриманими даними працює лише JS, можна зробити так щоб cпрацював JS (функція main) але дані не відправлялися на сервер
Подякували: mike, 221VOLT2

4

Re: Атрибут required в полі text

в чому була проблема?

(function(){
  console.log("called anonymously");
})()
Подякували: Betterthanyou1

5

Re: Атрибут required в полі text

checkValidity я скористався функцією валідатора, тому що прочитав що тег "from" призначений для передачі даних від користувача до сервера

Подякували: mike, 221VOLT2

6

Re: Атрибут required в полі text

Betterthanyou написав:
Вже розібрався
Але чому зразу (навіть якщо написати onclick замість onsubmit) йде відправка даних (перезавантажується сторінка, і методом GET передаються дані) в мене з отриманими даними працює лише JS, можна зробити так щоб cпрацював JS (функція main) але дані не відправлялися на сервер

ще можна відмінити дії браузера по-замовчуванню --
(return false , event.preventDefault() , stopPropagation() ,
https://learn.javascript.ru/default-browser-action
http://www.w3schools.com/jsref/event_preventdefault.asp
https://developer.mozilla.org/ru/docs/W … ropagation
)

https://blog.clever-games.win/
Це ще не кінець. Це навіть не початок кінця. Але, можливо, це кінець початку.
Зростання мудрості можна точно вимірювати ступенем зменшення злоби.
///// у творчій відпустці. не турбувати /////
Подякували: Betterthanyou1