jquery - 在显示 html 内容时跳过 div 部分
问题描述
我正在循环浏览 html 内容并显示在其他表格中。在阅读时,如果 div 元素是 display:none 那么我想跳过整个 div 部分。
在下面的示例中,需要隐藏“Property size, 100”行。
请让我知道最好的选择。
非常感谢。
苏里亚。
$('#tblWorksheet tbody').empty();
var tdworksheet;
$('#Worksheet label, #Worksheet input, #Worksheet select').each(function(index, element) { // context is
var theTag = this.tagName;
var TF;
if($(this).parent().get( 0 ).tagName == 'DIV' )
{
//hide entire div section
}
if (theTag == "LABEL") {
theValue = $(this).attr('title')
if (theValue != null)
tdworksheet += "<tr><td class='col-sm-2'><b>" + theValue + "</b></td>>"
} else if (theTag == "INPUT" && this.type == 'text') {
theValue = $(this).val();
if (theValue != null)
tdworksheet += "<td class='col-sm-2'><b>" + theValue + "</b></td></tr>"
}
});
$('#tblWorksheet tbody').append(tdworksheet);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table id="tblWorksheet" border=1>
<tbody></tbody>
</table>
<div id="Worksheet" class="divparent">
<div>
<p class="text-info" style="margin-left:10px;">
Please enter the following deck information.
</p>
</div>
<div class="row" id="divProp" style="display:none;">
<div class=" col-md-5 text-right">
<label title="Property Size">Property Size</label>
</div>
<div class="col-sm-4 text-left">
<input class="form-control" id="propsize" name="PropSize" type="text" value="100" />
</div>
</div>
<div class="row" id="divWorkType">
<div class="col-md-5 text-right">
<label id="lblWorkType" title="WorkType">Work Type</label>
</div>
<div class="col-sm-4 text-left">
<input Value="DISTURB" class="form-control" disabled="True" id="WORKTYPE" name="WORKTYPE" type="text" value="" />
</div>
</div>
</div>
解决方案
.is()
您可以使用 jQuery结合选择器来检查 div 的可见性:visible
。看起来您还想确保它是一个 div,所以您的条件将是这样的:
var $parent = $(this).parent();
if($parent.is('div') && !$parent.is(':visible')) {
return true; // continue to next loop iteration
}
推荐阅读
- python - 我们如何使用神经网络计算多类分类器的准确率
- java - 为什么 Android SQLiteDatabase 使用字符串数组作为参数输入?
- java - JVM 长时间 GC 暂停,即使没有耗尽内存
- c# - 如何对返回 void 的 DAO 更新/删除方法进行单元测试?
- r - R - ggplot 根据日期在同一图表上绘制两条线
- sql - How to make a string by loop in Oracle SQL
- node.js - expo-detox-hook 未安装在您的 osx 库中(Expo + Detox + Travis)
- list - Turning list of integers into string in OCaml
- nlp - Porter and Lancaster stemming clarification
- java - Spring Boot CRUD 操作创建 web 服务配置