gpt4 book ai didi

javascript - 如何根据 bool 变量隐藏元素?

转载 作者:行者123 更新时间:2023-12-03 11:04:16 24 4
gpt4 key购买 nike

我有这个jsp:

 <table>

<% ArrayList<Something> monAM = (ArrayList<Something>) request.getAttribute("monAM");
Time t = new Time();

for (Prescription p : monAM) {
boolean asd= t.lastTaken(p.getDay(), p.getDateLastTaken());

%>
<tr>

<input type="hidden" value="<%=asd%>" name="display"/>
<td >
<div >
<input id="nottaken"type="checkbox" name="drinkmed" value="<%=p.getPrescriptionID()%>"
/>
<p id="taken" >Taken</p>
</div>
</td>

</tr>
<%}%>

</table>

Javascript代码:

<script>
var asd = document.getElementById("display").value;
$(document).ready(function() {

if(asd==="true"){
document.getElementById("taken").style.display="block";
document.getElementById("nottaken").style.display="none";
}else{
document.getElementById("nottaken").style.display="block";
document.getElementById("taken").style.display="none";
}

});

</script>

Java 代码和方法运行良好,但是我在使用 JavaScript 显示元素时遇到了困难。如果 bool 值 asd 为 false,我想显示输入 #nottaken;如果 asd 为 true,则显示

#taken。

最佳答案

由于您在 document.ready 之前检查隐藏字段的值那么如何在 document.ready 之前读取元素的值.检查document.ready中隐藏字段的值。您还应该包含 Jquery 文件。试试这个

<script>

$(document).ready(function() {
var asd = document.getElementById("display").value;
if(asd==="true"){
document.getElementById("taken").style.display="block";
document.getElementById("nottaken").style.display="none";
}else{
document.getElementById("nottaken").style.display="block";
document.getElementById("taken").style.display="none";
}

});

</script>

关于javascript - 如何根据 bool 变量隐藏元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27936267/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com