[英]Jquery select containing div of target
<div class="row">
<label for="txtTitle">Title</label>
<div class="holder">
<div class="text-holder"> <span class="ico-error"></span><span class="text"> <input id="txtTitle"
runat="server" type="text" value="" /></span> <span class="t-l">
</span><span class="b-l"></span><span class="t-r"></span><span class="b-r"></span>
</div>
</div>
</div>
我有以下html。 我打算在输入框中执行一些Jquery验证。 如果这是无效的,我想将错误类添加到div
var isValid = true;
var errorMessage = '';
if ($('#<%=txtTitle.ClientID %>').val() == '') {
$('#<%=txtTitle.ClientID %>').parent().parent().parent(".row").addClass("error");
isValid = false;
errorMessage += "Firstname is required\n";
}
return isValid;
我曾尝试定位父级,但看到该div距父级父级更高。 因此尝试选择带有更多父标签的heirachy,但认为我偏离了正确的定位div的目标。
我建议使用.closest()
:
描述 :对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先,获得与选择器匹配的第一个元素。
var isValid = true;
var errorMessage = '';
var $this = $('#<%=txtTitle.ClientID %>');
if ($this.val() == '') {
$this.closest(".row").addClass("error");
isValid = false;
errorMessage += "Firstname is required\n";
}
return isValid;
如果您需要查找树,请使用.parents()方法并将其传递给包含div的类,即: .parents('.row')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.