如果显示P标签:无;Javascript
If P tag is display:none; Javascript
我有以下。。。
$(document).ready(function() {
$('p:contains("You")').parent('span').prev('input').addClass('error');
});
我的函数工作得很好,因为它将类添加到正确的输入中,但只有当包含"you"的段落显示为内联时,它才应该添加类。
有人知道我该怎么做吗?
我对每个输入的标记与此类似。。。。
<li class="yourdetli">
<label class="yourdet">House Number</label>
<input type="text" id="ctl00_ContentPlaceHolder1_TB_HNumber2" name="ctl00$ContentPlaceHolder1$TB_HNumber2">
<span style="color: Red; display: none;" class="errorp" id="ctl00_ContentPlaceHolder1_RequiredFieldValidator9">
<p>You must complete this field</p>
</span>
</li>
您可以使用filter((并检查显示属性:
$(document).ready(function() {
$('p:contains("You")').filter(function(){
return $(this).css('display') === 'inline';
})
.parent('span')
.prev('input')
.addClass('error');
});
如果函数返回true ,filter将保留该元素
$('p:contains("You"):visible')
假设您没有在文档中的任何位置更改段落的显示。
您可能需要尝试收集所有包含you
的<p>
标记,并使用if
语句循环所有这些标记。
如果css display
是inline
,则将error
添加到input
。
这可能有助于
$(document).ready(function(){
$("p:contains('you')").each(function(){
if($(this).css('display') === 'inline'){
$(this).parent('span').prev(':input').addClass('error');
}
});
});
:contains区分大小写。"你"不确定这是否是问题所在。
相关文章: