You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击Submit按钮页面自动刷新,求阻止方法及刷新原因(已试event.preventDefault())

问题说明

点击Submit按钮后输入框的值仅短暂显示就消失,页面自动刷新,希望页面不刷新且稳定显示值。已知用event.preventDefault()有效,想知道其他解决方法,以及代码是否存在错误。

页面刷新的原因

这是浏览器的默认行为:<form>标签内的<input type="submit">按钮被点击时,会触发表单的提交操作。哪怕你的<form>没有指定action属性,浏览器也会默认向当前页面URL提交表单,导致页面刷新,之前通过JS插入的内容会随着页面刷新被重置。

代码本身的问题

你的代码逻辑没有错误,核心问题就是没有阻止表单提交的默认行为,所以才会出现内容刚显示就刷新消失的情况。

除了event.preventDefault()的其他解决方法

方法1:把submit按钮改成普通按钮

将<input type="submit">改为<input type="button">,这样按钮就不会触发表单提交的默认行为,点击后只会执行myFunc():

<form>
    <label for="name">Name:</label>
    <input id="name" type="text">
    <input type="button" value="Send" onclick="myFunc()">
</form>

方法2:监听form的submit事件并阻止默认行为

把事件绑定在<form>标签的onsubmit上,而不是按钮的onclick,这样更符合表单的逻辑:

<form onsubmit="myFunc(event)">
    <label for="name">Name:</label>
    <input id="name" type="text">
    <input type="submit" value="Send">
</form>

对应的JS修改为:

function myFunc(event){
    event.preventDefault(); // 阻止表单提交默认行为
    const name = document.getElementById("name").value;
    document.getElementById("show_name").innerHTML = name;
}

方法3:移除form标签

如果你的页面不需要表单提交的功能(比如只是前端交互),可以直接去掉<form>标签,这样submit按钮就失去了默认的提交触发条件:

<label for="name">Name:</label>
<input id="name" type="text">
<input type="submit" value="Send" onclick="myFunc()">
<p id="show_name"></p>

原代码展示

HTML代码

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Page 1</title>
    <link rel="stylesheet" href="style.css">
    <script src="index.js"></script>
</head>
<body>
    <form>
        <label for="name">Name:</label>
        <input id="name" type="text">
        <input type="submit" value="Send" onclick="myFunc()">
    </form>
    <p id="show_name"></p>
</body>
</html>

JavaScript代码

function myFunc(){
    const obj = {
        name : document.getElementById("name").value
    }
    document.getElementById("show_name").innerHTML = obj.name;
}

内容的提问来源于stack exchange,提问作者avent

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 20:53:13