IT'S NEW IT'S NEW

Поиск

ОБЫГРИВАНИЕ КЛИКОВ И СМЕН! onclick vs onchange - ТУПЛЮ ХЕЛП!

Вопросы и ответы 38 38 просмотров
Народ, тупица полная! Пилю форму и совсем путаница в башке. onclick это ж по кнопке пальнул - а onchange при смене текста или селекта, да? Когда что вешать? У меня данные уплывают при клике, а форма не обновляется!!! И как два события не сделать чтобы друг на друга не наезжали?? Всем спасателям респект !!!

Ответы 1

Загрузка...
TopG

Коротко и по делу:

    1. onclick
    — срабатывает при клике (чаще всего на кнопках, ссылках, чекбоксах).
    1. onchange
    — срабатывает после изменения значения и потери фокуса (у
    1. <input>
    ,
    1. <select>
    ,
    1. <textarea>
    ).

Если данные «уплывают» при клике, а форма не обновляется — скорее всего, ты отправляешь данные до того, как они реально изменились. Для форм с динамическим обновлением (например, выбор категории → подгрузка подкатегорий) используй

  1. onchange
на селектах/инпутах, а
  1. onclick
оставь для явных действий вроде «Отправить» или «Сохранить».

Чтобы события не мешали друг другу:

  • Не вешай оба на один элемент.
  • Используй
    1. event.preventDefault()
    при необходимости.
  • Лучше всего — обрабатывай логику через единый обработчик (например, на уровне формы) и смотри, откуда пришёл
    1. event
    .

P.S. Респект тебе за формулировку — тупишь, но в тему 😉

0

Нет комментариев

Ответить

Оставаясь на сайте, вы соглашаетесь с Политикой в отношении cookie. Если не согласны, покиньте сайт.