No puedo cambiar el idioma de mi texto de marcador de posición. Solo puedo cambiar el idioma del texto del botón normal, el texto del encabezado, pero no puedo cambiar el idioma del texto del marcador de posición. por favor, ayúdeme a sugerir cualquier cosa que necesite agregar en mi código. Gracias
<!DOCTYPE html> <html> <head> <title>Node.js app</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <link rel="stylesheet" href="Style.css" /> <script src="https://kit.fontawesome.com/a076d05399.js"></script> <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> </head> <body> <label class="switch"> <input type="checkbox" id="togBtn"> <div class="slider round"> <span language='myanmar' class="on">MYN</span> <span language='english' class="off">ENG</span> </div> </label> <div class="form-group"> <input type="text" class="form-control usrplaceholder" placeholder="Username" required="required"> </div> <div class="form-group"> <input type="password" class="form-control pwplaceholder" name="pw" placeholder="Password" required="required"> </div> <script> document.querySelector('#togBtn').addEventListener('input', (event) => { document.querySelector('.usrplaceholder').textContent = data[event.currentTarget.checked ? 'myanmar' : 'english'].usrplaceholder; document.querySelector('.pwplaceholder').textContent = data[event.currentTarget.checked ? 'myanmar' : 'english'].pwplaceholder; }); var data = { "english": { "usrplaceholder": "Username", "pwplaceholder": "Password" }, "japanese": { "usrplaceholder": "အသုံးပြုသူအမည်", "pwplaceholder": "စကားဝှက်", } } </script> </body> </html>Hay dos problemas en su código.
En primer lugar, está intentando acceder a la propiedad myanmar del objeto de data cuando no existe. Las únicas propiedades, al menos en el código de ejemplo, son english y japanese .
En segundo lugar, los elementos de input no tienen una propiedad textContent . Por el contexto, parece que está intentando establecer la propiedad de placeholder de posición en su lugar.
document.querySelector('#togBtn').addEventListener('input', (event) => { document.querySelector('.usrplaceholder').placeholder = data[event.currentTarget.checked ? 'japanese' : 'english'].usrplaceholder; document.querySelector('.pwplaceholder').placeholder = data[event.currentTarget.checked ? 'japanese' : 'english'].pwplaceholder; }); var data = { "english": { "usrplaceholder": "Username", "pwplaceholder": "Password" }, "japanese": { "usrplaceholder": "အသုံးပြုသူအမည်", "pwplaceholder": "စကားဝှက်", } } <script src="https://kit.fontawesome.com/a076d05399.js"></script> <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> <label class="switch"> <input type="checkbox" id="togBtn"> <div class="slider round"> <span language='myanmar' class="on">MYN</span> <span language='english' class="off">ENG</span> </div> </label> <div class="form-group"> <input type="text" class="form-control usrplaceholder" placeholder="Username" required="required"> </div> <div class="form-group"> <input type="password" class="form-control pwplaceholder" name="pw" placeholder="Password" required="required"> </div>