Ответы пользователя по тегу JavaScript
  • Как в Java Script и HTML сделать input с запоминанием введеного текста?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Для запоминания "Навечно" можете использовать LocalStorage :D
    Ответ написан
    Комментировать
  • Как загружать Яндекс Карту на сайте по доскролу?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Можно попробовать вызвать специальный метод, который будет её прогружать, когда вы будете скрольту нижу. Для этого можно использовать высоту экрана получив её из document.documentElement. Подробнее тут.
    Далее можно просто проверять через if высоту прокрутки, если она равна или больше той, которая вам нужна, вызывать скрипт для рендринга/инициализации/и т.д. вашей карты
    Ответ написан
  • Как отменить открытие файла при выборе?

    NikFaraday
    @NikFaraday
    Student full-stack Developer

    1. Пользователь выбирает option
    2. Нажимает на a(download) и после этого скачивает файл

    В данный момент уже при выборе option - идёт переход на страницу с value, есть возможность это действие заблокировать?


    Повешайте на обработчик, который будет сохранять value в отдельную переменную, и только после нажатия на кнопку будет передавать/открывать/скачивать по данной переменной
    Ответ написан
    1 комментарий
  • Как разделить функцию кнопки показать/скрыть пароль на отдельные кнопки?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    1) Дайте каждому полю свой Id
    2) Создайте две кнопки для каждого поля
    3) Через JS (Лучше через jQuery) сделайте обработчик нажатия на каждую кнопку, что бы она меняла тип инпута password/text

    UPD:


    if ($('.password').attr('type') == 'password') {
    $(this).addClass('view');
    $('.password').attr('type', 'text');


    Вот этот ваш код выбирает ВСЕ элементы с классом password и меняет им ВСЕМ тип на text. Если вам нужно для каждого инпута отдельно, тогда делайте выборку НЕ ЧЕРЕЗ КЛАССЫ, а ЧЕРЕЗ ID
    Ответ написан
  • Как прописать валидацию радиокнопки?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Пробуйте jQuery использовать. С jQuery ваш код будет выглядеть вот так:

    <inpute id='radioBtn' />
    
    if (!$('#radioBtn').is(':checked')) {
          console.log('not checked')
        }
    Ответ написан
    Комментировать
  • Как исключить undefined NaN?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Думаю, вам стоит продебагать код и вывести промежуточные значения в консоль
    Ответ написан
  • Как прописать проверку активен ли элемент с помощью id?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Вам нужно такую проверку

    f ($(this).hasClass('active')) {
    console.log('active')
    };

    делать после какого-то действия. jQuery не имеет возможности отслеживать изменения классов. Почитайте тут.
    Ответ написан
    Комментировать
  • Как установить checked у radio кнопки?

    NikFaraday
    @NikFaraday
    Student full-stack Developer

    <input type="radio" class="delivery-radio" name="delivery" checked='checked' value="pickup">


    Потому что у вас по стандарту стоит что инпут checked.


    if ($(this).is(':checked') === false ) {
                $('input[name="delivery"]').removeAttr('checked')
                $(this).prop('checked', 'checked');
            }



    Вот этот кусок кода проверяет, если кнопка НЕ чекнуто, ТОГДА мы делаем её НЕ чекнутой ЕЩЁ РАЗ...
    Ответ написан
  • Как сделать динамический запрос через Ajax передав данные кликнув на 1 блок и получить их из базы данных в другом блоке?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    $.ajax({
       url: 'YourUrl',
       method: 'post',
       data: JSON.stringify(' Вытянуть id (ССылку кинул ниже)'),
       dataType: 'json',
       success: (response) => {
          *Тут обращаемся к нужному элементы и вытягиваем из response данные в виде Json*
       }
    });


    Как вытянуть id элемента
    Ответ написан
    Комментировать
  • Почему JS скрипт срабатывает только со 2го - 3го раза?

    NikFaraday
    @NikFaraday Автор вопроса
    Student full-stack Developer
    Разобрался сам, вот решение:

    Проблема заключалась в том, что я пишу бэк-часть на asp.net. На разметке видно, что у меня кнопка для отправки данных на сервер имеет тип submit. Данный тип кнопки составит вам проблему, если вы захотите реализовать передачу данных через ajax в асинхронном режиме.

    Далее объясню решение в том аспекте, как её понимаю я.
    Кнопка типа submit сама по себе пытается отправить форму на сервер параллельно запуская ajax скрипт, а так же перегружается страницу. При перегрузке страницы, почему-то полностью пропадает блок success (Есть несколько причин на это), но блок error почему-то остаётся и потом ловит ответ от сервера (Если такой есть). Если же ответ от сервера будет, допустим, статус-код 200, то блока success нет и, логично, нечему просто перехватывать соответствующий ответ.

    Решение проблемы заключается в том, что бы просто поменять тип кнопки с submit на button и повешать на кнопку событие ajax.
    Ответ написан
    Комментировать
  • Как отправить данные с помощью ajax в приложение на asp .net core?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Может немного запоздал с ответом, судя по дате вопроса, но может это поможет новым молодым разработчикам)

    1) Экшен (Метод контроллера с возвращаемым значение IActionResult) должен иметь атрибут IgnoryAntiforgetyToken ОБЯЗАТЕЛЬНО, если вы не генерируете его самостоятельно.
    2) ajax запрос должен передавать json данный, если вы указываете тип передачи данных json соответственно. Для этого, перед ajax запросом, пропишите что-то типа let jsonData = JSON.stringify("something").
    3) Самое главное, url нужно указывать вот так: '@Url.Action("ActionName", "ControllerName")'
    4) Методы success и error, если вы пишете там function(response), то вот этот response это локальная переменная, которая показывает сам ответ от сервера. Для получения каких-то данных от сервера, нужно прямо обращаться к той переменной, которую вы передаёте через Json, для примера, если возврат имеет вот такой вид

    return Json(new { message = "some message" } ):

    Тогда на ajax'е вы должны обращаться к этой message через переменную response, типа вот так:

    alert(response.message);
    Ответ написан
    Комментировать