代码按我的预期工作,但是有可能在单个标签或两个标签中进行编码。在id =“ vCurVal”中,我使用来自其他jsp网址的scriptlet标记获取值。
<div class="box camera-view-container col-md-3" *ngFor="let item of (snapShotArray | searchFilter: searchValue); let i = index; ">
.labelbold {
padding-right: 0px;
padding-left: 0px;
font-weight: bold;
font-size: 12px;
padding-bottom: 0px;
color: #993333;
padding-top: 0px;
font-family: verdana
}
<script type="text/javascript">
var CurrentVal = '<%=strCurrentValue%>';
document.getElementById("vCurVal").innerHTML = CurrentVal;
</script>
输出:
<div>
<label class="labelbold" style="font-weight: bold; float:left;">ORDER NO - </label>
<div id="vCurVal" class="labelbold" style="font-weight: bold; float:left;"></div>
<label class="labelbold" style="font-weight: bold; float:left;">  ALREADY EXIST </label>
</div>
我也尝试过这种方式,
ORDER NO - 37 ALREADY EXIST
输出
<legend class="labelbold" style="font-weight: bold;" > ORDER NO - <label id= "vCurVal" style="color:red;"> </label> ALREADY EXIST </legend>
这没有显示我期望的动态值37。
值可能会根据输入内容而更改。
答案 0 :(得分:0)
一个解决方案是这个。不需要外部容器div,是的,您可以将输出元素放在labelbold元素内,这样总共只有两个嵌套元素,而不是示例中的4个。
请注意,我在这里使用了<output>
元素,但是您可以根据需要使用<span>
或任何内联元素。
var CurrentVal = '0.17 amp';
document.getElementById("vCurVal").innerHTML = CurrentVal;
.labelbold {
padding-right: 0px;
padding-left: 0px;
font-weight: bold;
font-size: 12px;
padding-bottom: 0px;
color: #993333;
padding-top: 0px;
font-family: 'Verdana', sans-serif;
}
<div class="labelbold" style="float:left">ORDER NO - <output id="vCurVal"></output> ALREADY EXIST </div>
(可以使用不带内部输出元素的解决方案(例如,在文本中需要输出的位置使用%1
,JavaScript为innerHTML = innerHTML.replace(/%1/, currentVal)
,但我可以只是为了从源头省去一个元素,才真的建议这样的“聪明”程度。)