我想在复选框中更改一个变量,该变量会导致 if 语句在不重新加载页面的情况下进行计算,但我正在努力……仍在学习,抱歉!

这是相关的代码:

 <!--Variable declaration-->
 <script type="text/javascript"> var lettuce = false; </script>

 <!--The following line is within a form-->
 <input type="checkbox" onclick="lettuce=true" name="food" value="lettuce" /> Lettuce<br />

 <--the if statement-->
 <script type="text/javascript">
      if (lettuce == true) {
    document.write("45");
  }
 </script>

谢谢!

最佳答案

<input type="checkbox" onchange="lettuce=this.checked; recompute();" name="food" value="lettuce" /> Lettuce<br />

<script type="text/javascript">
function recompute()
      if (lettuce == true) {
    document.write("45");
  }
}
 </script>

首先,您需要 onchange 事件,该事件在复选框状态更改时被调用。 this.checked 根据该状态返回 bool 值(真或假)。其次,if 语句仅在页面加载该脚本时处理一次。将其放在函数中以再次调用它。

关于Javascript 变量随 onclick 变化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6877826/

10-12 15:20