我有一些html数据来自数据库动态。在一些html中,div是正确关闭的,而一些记录中的div内部没有正确关闭。我把这些东西放到一个jquery选项卡中,但当没有结束的div出现时,选项卡停止工作。我想要的东西,其中打开div的将被动态结束。
如果您可以在呈现HTML之前访问它,那么很容易:您可以让jQuery为您咀嚼它。例子:
jQuery("<div>Hello <span>Sir</span>")[0].outerHTML;
将给你:
<div>Hello <span>Sir</span></div>
所以如果你能在变量"dbStringName"中获得接收到的HTML在它被插入到标签中之前只需执行
var myCleanedUpHTML = jQuery(dbStringName)[0].outerHTML;
放到你的标签里
您可能需要检查一下,确保放入数据库的html在开始时都是正确关闭的。
或者你可以使用javascript的indexof
来检查div是否正确关闭,如果没有,添加一个关闭div。
类似:
if (!dbStringName.indexOf("</div>") > -1){
//add div here
}
使用div
.containerDiv {
border: 1px solid #3697f6;
width: 100%; display:table
}
.rowDivHeader {
border: 1px solid #668db6;
background-color: #336799;
color: white;
font-weight: bold; display:table-row
}
.rowDiv {
border: 1px solid #668db6;
background-color: #cee6fe;
display:table-row
}
.cellDivHeader {
border-right: 1px solid white;
display: table-cell;
width:12%;
padding: 1px;
text-align: center;
}
.cellDiv {
border-right: 2px solid white;
display: table-cell;
width:10%;
padding-right: 4px;
text-align: center;
border-bottom: none;
}
.lastCell {
border-right: none;
}