javascript – 如何使用jquery查找最近的元素

前端之家收集整理的这篇文章主要介绍了javascript – 如何使用jquery查找最近的元素前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在SO中搜索过,我发现了很多例子,但是我的一切都有所不同.

1)最初我有一行,如果用户点击保存&下一个按钮会说你有3个字段丢失

2)如果用户点击addmore按钮,他没有在文本字段中键入任何值,那么他点击保存和下一个按钮,它应该仍然说3个字段缺少

3)如果用户键入克隆行中的任何一个字段,那么他点击保存,下一个按钮验证应该发生在我的代码前两个工作点

但是问题是如果用户点击更多的行,并且他键入任何一个克隆的字段,然后如果他点击安全,下一个按钮,所需的_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;
          });
        }

使用我目前的代码,我得到错误.

未捕获TypeError:无法读取未定义的属性“length”

$(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"});

颜色红色和红色边框只适用于该领域不适用于行:(

Fiddle link为参考

解决方法

@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;
          });
        }

猜你在找的jQuery相关文章