Quiero simplificar mi formulario de registro. Quiero ocultar el campo contraseña2 y copiar el valor ingresado en el campo contraseña automáticamente al campo contraseña2. Probé un javascript pero no funcionó. Esto es lo que probé.
<td><span class="smalltext">{$lang->password}</span></td> <td><span class="smalltext">{$lang->confirm_password}</span></td> </tr> <tr> <td><input type="password" class="textbox" name="password" id="password" style="width: 100%" /></td> <td><input type="password" class="textbox" name="password2" id="password2" style="width: 100%" /></td> </tr> <tr> <td colspan="2" style="display: none;" id="password_status"> </td> </tr> <script> $(function(){ var $foo = $('#password'); var $bar = $('#password2'); function onChange() { $bar.val($foo.val()); }; $('#password') .change(onChange) .keyup(onChange); }); </script>El evento input manejará todos los eventos que modifican el valor, incluido pegar, escribir, etc., por lo que recomendaría eso en lugar de intentar capturar todos los demás eventos posibles.
const passwordInput2 = document.querySelector('#password2'); document.querySelector('#password').addEventListener('input', (event) => { passwordInput2.value = event.target.value; }); <input type="password" class="textbox" name="password" id="password" style="width: 100%" /> <input type="password" class="textbox" name="password2" id="password2" style="width: 100%" />