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

如何实现修改密码时两次输入新密码一致后才允许提交操作?

修改方案

步骤1:更新HTML提示区域

在现有<div id="message">的密码规则列表末尾,新增密码匹配校验的提示项:

<div id="message">
  <h3>A senha deve conter o seguinte:</h3>
  <p id="letter" class="invalid">A <b>letra </b> minúscula</p>
  <p id="capital" class="invalid">A <b>letra </b> maiúscula</p>
  <p id="number" class="invalid">O <b>número</b></p>
  <p id="caracter" class="invalid">O <b>Caracter</b> especial</p>
  <p id="length" class="invalid">Minimo <b>8 caracteres</b></p>
  <!-- 新增以下行 -->
  <p id="match" class="invalid">两次<b>密码输入一致</b></p>
</div>

步骤2:补充JS校验逻辑

在现有JS代码末尾追加以下代码,实现密码匹配校验、表单提交拦截逻辑:

// 获取确认密码输入框、匹配提示、表单DOM
var confirmInput = document.getElementById("senhaconfir");
var matchTip = document.getElementById("match");
var form = document.querySelector('.alteracao-signin');

// 封装密码匹配校验函数
function validatePasswordMatch() {
  if (myInput.value === confirmInput.value && confirmInput.value.length > 0) {
    matchTip.classList.remove("invalid");
    matchTip.classList.add("valid");
    return true;
  } else {
    matchTip.classList.remove("valid");
    matchTip.classList.add("invalid");
    return false;
  }
}

// 新密码、确认密码输入时都触发匹配校验
myInput.addEventListener('keyup', validatePasswordMatch);
confirmInput.addEventListener('keyup', validatePasswordMatch);

// 确认密码聚焦时也显示规则提示
confirmInput.onfocus = function() {
  document.getElementById("message").style.display = "block";
}

// 拦截表单提交事件
form.addEventListener('submit', function(e) {
  // 校验所有规则是否都通过
  const allValid = document.querySelectorAll('#message .invalid').length === 0;
  if (!allValid) {
    e.preventDefault(); // 阻止默认提交行为
    // 用已引入的SweetAlert2弹出错误提示
    Swal.fire({
      icon: 'error',
      title: '校验不通过',
      text: '请检查密码是否符合复杂度要求,且两次输入的新密码一致'
    })
  }
  // 若你原有自定义提交函数inserir_senha,可在此处allValid为true的分支内调用即可
})

效果说明

修改完成后:

  • 用户输入新密码和确认密码时会实时校验是否一致,在提示区同步显示状态
  • 只要存在任意一项校验不通过(复杂度不符合/两次密码不一致),提交表单时会直接拦截,弹出错误提示,不会执行提交操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.19 12:27:07