Ответы пользователя по тегу JavaScript
  • Почему TypeScript срабатывает только после обновления страницы?

    ermolaevalexey
    @ermolaevalexey
    frontend веб-разработчик
    Ну, во-первых, typescript здесь вообще ни при чем, так как он компилируется в Js.
    Во вторых, значение переменной is_favoutite нигде не перезаписывается по коду, а берётся в начале из некого «кэша». В третьих, вы совершаете асинхронную операцию - запрос к бэкэнду на изменение данных, но при этом не пытаетесь даже никак обработать результат этого запроса - колбэк добавить какой нибудь, в промис завернуть, async/await заиспользовать, что тоже промисы, но под капотом.
    При таких операциях ответ приходит не сразу же, а через какое то время, поэтому по классике в методы, которые совершают асинхронные операции, добавляют коллбэки - функции, которые могут принять результат и его обработать.
    Советую почитать про event loop, промисы, вообще про асинхронность в js. Ну или для начала хотя бы лучше узнать api инструмента, которым пользуетесь, а именно jquery и метод ajax, хотя бы.
    Ответ написан
    Комментировать
  • Как вернуть итог отработки функции?

    ermolaevalexey
    @ermolaevalexey
    frontend веб-разработчик
    Mike Ro, чтобы увидеть результат, в вызов функции надо подставить аргументы. Вы ее вызываете с параметрами по умолчанию.
    Рекомендую к изучению:
    learn.javascript.ru/function-basics
    https://developer.mozilla.org/ru/docs/Web/JavaScri...

    В данном случае, вам необходимо передать функции два строковых аргумента: идентификатор DOM-элемента вашей формы и идентификатор DOM-элемента вашего инпута, как-то так:

    //подхватываем селектор класса (можно исп-ть id(#) если есть или самого элемента)
    // чтобы увидеть результат, можно обернуть вызов этой функции в console.log()
     required_checked_input1('.my_form', '.my_input')


    Обратите внимание, что вам надо использовать вариант функции, предложенный Сева.
    Ответ написан
    Комментировать