【发布时间】:2012-01-27 00:08:24
【问题描述】:
这个问题的其他答案涉及时间,而这个问题涉及刷新 if 语句中的一部分 javascript。
一旦 HTML 页面加载,就会有一个可见的选择元素。根据选择的选项,将出现一组不同的输入字段。
我最初的问题是,当用户重新单击按钮时,我创建的“Submit()”函数将在旧输入字段上重绘相同的输入字段,从而导致混乱。当用户单击“提交”时,您会看到绘制相同的输入字段的次数。
我添加了一个名为 checkBool() 的函数来检查表单是否已绘制。如果有,那么它将调用 window.location.reload() 函数。如果没有,它只会调用我的 Submit() 函数。
代码现在不会堆积输入字段了。相反,当我第二次点击提交按钮时,即使选择了不同的选项,绘制的表单也会消失。
我想要发生的是当用户选择不同的选项并点击提交时,当前表单被删除并自动绘制新的表单集。
这是我的 checkBool() 函数:
var boolean = new Boolean();
function checkBool(){
if(boolean==false){
Submit();
}else if(boolean==true){
window.location.reload();
boolean=0;
Submit();
return boolean;
}
}
window.location.reload() 函数似乎立即重新加载脚本,浏览器从不执行“Submit()”函数。
【问题讨论】:
-
冒着听起来很愚蠢的风险,您是否考虑过简单地禁用点击提交按钮?
-
仅供参考,您应该永远使用
new Boolean。 -
或
if (boolean == true)... -
Karim - 我将 onclick 切换为“checkBool()”。 Johnny Craig - 提交功能非常强大。基本上,它首先从 select 元素中获取一个名为“goal”的变量值。然后如果goal=="none" 它将使布尔值= 0。然后打印错误消息。如果目标=="fatloss",布尔值=1;然后它会调用所有绘制表格的函数。 if goal== w/e else boolean =1 并调用一组不同的表单函数。
标签: javascript refresh boolean