Подтвердить что ты не робот

Как найти ближайший элемент с помощью jquery

Я искал в SO. Я нашел так много примеров, но мой немного отличался от всех.

1) изначально у меня есть строка, если пользователь нажимает кнопку "Сохранить" и "следующая", он скажет, что у вас нет трех полей

2), если пользователь нажимает кнопку addmore, и он не вводит никакого значения в текстовое поле, тогда он нажимает кнопку сохранения и следующего, он все равно должен указывать 3 поля без

3), если пользователь набирает любое из полей в клонированной строке, тогда он нажимает кнопку "Сохранить", а следующая кнопка должна быть проверена с моим кодом, первые две точки работают

но проблема в том, что пользователь нажимает еще несколько строк, и он вводит любое из клонированного поля, а затем, если он нажимает кнопку "безопасно" и следующая кнопка, класс required_Field применяется во всем другом поле, но он должен применяться только к этому строка: (

Если мы сможем найти ближайший элемент поля, где пользовательский тип, то я могу добавить класс required_Field только к этому элементу

Я пробовал как ниже

        function additionalvalidation() {
          var myRow = $(".check").length;

          //$(".cloned_field").css("border","1px solid green");
          $(".cloned_field").change(function() {
                var myField = $(".cloned_field").val().length;
            if (myField >= 0) {
              $(".cloned_field").addClass("required_Field");
              debugger;
              $(".cloned_field").prevAll('label').find('span.required-star').removeClass('text-error-red');
              //bind_validation();
            } else {
              $(this).closest(".cloned_field").removeClass("errRed");
              $(".cloned_field").removeClass("text-error-red");
            }
            bind_validation();
            return false;
          });
        }

С моим текущим кодом я получаю ошибку.

Uncaught TypeError: невозможно прочитать длину 'свойства' undefined

$(this).closest(".cloned_field").addClass("required_Field");

Я пробовал это также

$(this).closest(".cloned-row1").addClass("required_Field");

Любое предложение по этому вопросу

Я попробовал эту новую →

$(this).closest(".cloned_field").css({"color": "red", "border": "2px solid red"});

красная и красная граница цвета применялась только для этого поля не для строки: (

Ссылка на ссылку для ссылки

4b9b3361

Ответ 1

@mahadevan попробуйте этот код. Я работаю

        function additionalvalidation() {
          var myRow = $(".check").length;

          //$(".cloned_field").css("border","1px solid green");
          $(document).on("change",".cloned_field",function() {
          var myField = $(this).val();
          var $clonedDiv  = $(this).closest('.cloned_div');

            if (myField!='') {     
                $clonedDiv.find(".cloned_field").addClass("required_Field");
                $clonedDiv.find(".deg_date").addClass("required_Field");
                $clonedDiv.find(".trans_date").addClass("required_Field");
                $clonedDiv.find(".txt_degreName").addClass("required_Field");


              debugger;
              $(".cloned_field").prevAll('label').find('span.required-star').removeClass('text-error-red');
              //bind_validation();
            } else {
                $clonedDiv.find(".cloned_field").removeClass("errRed");
                $clonedDiv.find(".deg_date").removeClass("errRed");
                $clonedDiv.find(".trans_date").removeClass("errRed");
                $clonedDiv.find(".txt_degreName").removeClass("errRed");

                //$(".cloned_field").removeClass("text-error-red");
            }
            bind_validation();
            return false;
          });
        }

Ответ 2

Jquery next, возможно, ответ для вас

Описание: Получить сразу же следующего брата каждого элемента в наборе согласованных элементов. Если предусмотрен селектор, он получает следующий брат, только если он соответствует этому селектору.

https://api.jquery.com/next/

Ответ 3

Вы показываете самый близкий поиск в дереве родителей и найдите ближайший. Если вы хотите выполнить поиск в брате и сестрах, вы должны выполнить поиск на родных и близких.