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

无需刷新页面清除测验结束时的姓名输入框内容

解决测验重启时清空姓名输入框的问题

嘿,这个问题我熟!既然页面不允许刷新,那咱们直接用JavaScript操作DOM来清空输入框就行,完全不用刷新页面。结合你的HTML结构,给你几个实用的方案:

方案1:在重启测验的触发事件中直接清空输入框

假设你有一个「重启测验」的按钮(比如类名为.js-restart-quiz),只需要在按钮的点击事件里添加清空输入框的逻辑:

// 获取重启按钮和姓名输入框元素
const restartBtn = document.querySelector('.js-restart-quiz');
const nameInput = document.querySelector('.js-name');

// 给重启按钮绑定点击事件
restartBtn.addEventListener('click', () => {
  // 核心:清空输入框内容
  nameInput.value = '';
  // 这里可以加上你的其他重启逻辑,比如重置题目状态、隐藏结果面板等
});

方案2:在重启测验的函数中加入清空步骤

如果你的重启逻辑是封装在一个函数里的,直接把清空输入框的代码加进去就行:

function restartQuiz() {
  // 先执行你的其他重启操作:比如重置分数、显示初始题目等
  // 然后清空姓名输入框
  document.querySelector('.js-name').value = '';
}

// 调用重启函数时就会自动清空输入框
// restartQuiz();

方案3:用表单的reset方法(需要微调HTML)

如果愿意给输入框套一个<form>标签,还可以用表单原生的reset()方法来重置输入框:

修改后的HTML:

<form class="js-quiz-form">
  <div class="js-quiz-submit"> 
    <input type="text" class="js-name" placeholder="Please Enter Your Name"/> 
    <input type="button" class="js-submit" value="Submit"/> 
  </div>
</form>

对应的JavaScript:

const quizForm = document.querySelector('.js-quiz-form');

// 在重启测验时调用reset方法,会清空表单内所有输入框
function restartQuiz() {
  // 其他重启逻辑...
  quizForm.reset();
}

这些方法都是纯前端操作,完全不需要刷新页面,完美适配你「用户可重启测验」的需求~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:02:06