javascript - 由innerHTML修改的文本将不会保持可见

标签 javascript innerhtml

我有一个函数,如果满足条件,应该在 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>

最佳答案

innerHTML 不保持可见的原因是因为有某种类型的 onclick 方法正在重置表单。如果这是真的,请像这样编辑您的 onclick 方法:

onClick="function();return false;"

这里的变化是;return false;

关于javascript - 由innerHTML修改的文本将不会保持可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16417443/

相关文章:

javascript - django 循环中的计数器

javascript - 如何提交单个表单并使用两个提交按钮一键单击然后验证

javascript - 多个值在 js ajax 中不起作用

javascript - jquery 函数不适用于通过 innerHTML 写入的元素

javascript - 使用在 Safari/IE/FF 中不起作用的 innerHTML/textContent/innerText 将字符串更改为日期

javascript - 为什么这个 .innerHTML 不起作用?

javascript - 在其 js 容器中垂直居中文本 - progressbar.js

javascript - 分析闭包示例

JavaScript for 循环,innerHTML 在循环执行期间不更新

javascript - 将 javascript 编写为 document.getElementById 函数的innerHTML