我有一个函数,如果符合条件,它应该在P元素中显示一条消息。该函数运行正常,但是当您按下按钮然后消失时,发送到'output1'的文本会短暂出现。我已经尝试将JS放在头部和身体中,但它似乎没有任何区别。有任何想法吗?感谢。
HTML:
<p id="output1"><p>
使用Javascript:
<script>
function logicProcess() {
// alert('function launched');
if(document.getElementById('q1Y').checked || document.getElementById('q2Y').checked || document.getElementById('q3Y').checked) {
document.getElementById("output1").innerHTML = "Sorry, you don't qualify for our shared ownership properties";
}
else {
document.getElementById("output1").innerHTML = "You may qualify for our shared ownership scheme. Please complete the registration form.";
}
}
</script>
答案 0 :(得分:3)
innerHTML不能保持可见的原因是因为某种类型的onclick方法正在重置表单。如果是这样,请编辑你的onclick方法,如下所示:
onClick="function();return false;"
这里的变化是; return false;
答案 1 :(得分:0)
你没有告诉我们你是如何调用这个函数的,但是你可能会这样做是为了响应表单的提交按钮被按下。
这将修改DOM,然后提交表单,这将导致加载新页面。
您需要取消表单的默认行为才能停止提交。
function logicProcess(evt) {
// All your other code
evt.preventDefault();
}
document.getElementById('myForm').addEventListener('submit', logicProcess);