如果没有html标记,则会额外添加额外的div;当第二个块没有执行时。基于作者对话框中的复选框有三个条件。未选中第二个复选框时;那么第一和第三个条件都是真的,第二个条件是假的;所以第二个明显的块不应该被执行。但它在标记中增加了额外的div;所以div与class"容器标签 - 容器"在两者之间关闭。
- 请在下面找到明显的标记
<sly data-sly-test.condition1="${properties.checkbox1}">
<sly data-sly-test.condition2="${properties.checkbox2}">
<sly data-sly-test.condition3="${properties.checkbox3}">
<div class="tabs-body">
<div class="container tabs-container">
<!--/* First condition */-->
<sly data-sly-test="${condition1}">
<div class="tabs-body-item" data-tab-content-id="data-tab-content-id1">
</div>
</sly>
<!--/* Second condition */-->
<sly data-sly-test="${condition2}">
<sly data-sly-test="${condition1}">
<div class="tabs-body-item" data-tab-content-id="data-tab-content-id2">
</sly>
<sly data-sly-test="${!condition1}">
<div class="tabs-body-item is-active" data-tab-content-id="data-tab-content-id2">
</sly>
</div>
</sly>
<!--/* Third condition */-->
<sly data-sly-test="${condition3}">
<sly data-sly-test.condition2andcondition1false="${!condition2 && !condition1}">
<div class="tabs-body-item is-active" data-tab-content-id="data-tab-content-id3">
</sly>
<sly data-sly-test="${!condition2andcondition1false}">
<div class="tabs-body-item" data-tab-content-id="data-tab-content-id3">
</sly>
</div>
</sly>
</div>
</div>
呈现的标记是 -
<div class="tabs-body">
<div class="container tabs-container">
<div class="tabs-body-item" data-tab-content-id="data-tab-content-id1">
</div>
</div><!--extra div-->
<div class="tabs-body-item" data-tab-content-id="data-tab-content-id3">
</div>
</div>
</div>
额外的div已被提及评论。我花了很多时间在上面,但无法弄清楚额外div的添加位置。你能不能请专家帮我解决这个问题?
欣赏它。
答案 0 :(得分:1)
这很可能是由于标签的嵌套无效。不要尝试将JSTL代码转换为HTL。
n-1