Skip to main content

     Show Eye icon on password input field



The following shows the HTML code of the page:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Toggle Password Visibility</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.3.0/font/bootstrap-icons.css" /> <link rel="stylesheet" href="css/style.css" /> </head> <body> <div class="container"> <h1>Sign In</h1> <form method="post"> <p> <label for="username">Username:</label> <input type="text" name="username" id="username"> </p> <p> <label for="password">Password:</label> <input type="password" name="password" id="password" /> <i class="bi bi-eye-slash" id="togglePassword"></i> </p> <button type="submit" id="submit" class="submit">Log In</button> </form> </div> <script src="js/app.js"></script> </body> </html>
Code language: HTML, XML (xml)

The HTML page contains an input element with the type password and an <i> element with the CSS classes provided by Bootstrap.

The Bootstrap allows you to use the class bi-eye of the <i> element to show the eye icon. To change the icon from eye to eye slash, you just need to change the class of the <i> element to bi-eye-slash

To place the icon inside the password input, you can use the negative margin for the <i> element as follows:

form i { margin-left: -30px; cursor: pointer; }
Code language: CSS (css)

The rest of the CSS is straightforward.

In the app.js file:

First, select the toggle password icon and the password input field using the querySelector() method:

const togglePassword = document.querySelector('#togglePassword'); const password = document.querySelector('#password');
Code language: JavaScript (javascript)

Then, attach an event listener to the togglePassword icon and toggle the type attribute of the password field as well as the class of the icon:

togglePassword.addEventListener('click', function (e) { // toggle the type attribute const type = password.getAttribute('type') === 'password' ? 'text' : 'password'; password.setAttribute('type', type); // toggle the eye / eye slash icon this.classList.toggle('bi-eye'); });
Code language: JavaScript (javascript)



Comments

Popular posts from this blog

Install MariaDB Latest Version 11.4 in Red Hat Version 9

 This this post i will show you step by step the installation process of mariaDB in red hat version 9. Step1 Run the command to pull the latest updated packages on applications installed in your system. -dnf update If you get Kernal update than reboot the system -reboot Step2 Go to official mariaDB site Make mariadb repository in /etc/yum.repos.d Place the configuration in this file # MariaDB 11.4 RedHatEnterpriseLinux repository list - created 2024-09-24 11:12 UTC # https://mariadb.org/download/ [mariadb] name = MariaDB # rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https://mariadb.org/mirrorbits/ for details. # baseurl = https://rpm.mariadb.org/11.4/rhel/$releasever/$basearch baseurl = https://mirrors.aliyun.com/mariadb/yum/11.4/rhel/$releasever/$basearch # gpgkey = https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB gpgkey = https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB gpgcheck = 1 Now install the mariaDB with its dependencies package...

How to find out if a package is installed in Linux?

1) How to find out if a package is installed or not in Linux There are multiple ways to check find locate package is installed in linux machine or not 1.a) Using which command The  ‘which’  command returns an executable path that can be executed when the command is entered in the terminal. # which vi /usr/bin/vi 1.b) Using whereis command The  ‘whereis’  command is used to search the binary, source, and man page files for a given command. # whereis vi vi: /usr/bin/vi /usr/share/man/man1/vi.1p.gz /usr/share/man/man1/vi.1.gz 1.c) Using locate command The  ‘locate’  command performs faster than the find command because it uses an updatedb database, whereas the find command searches in real time. # locate --basename '\nano' /usr/bin/nano /usr/share/nano /usr/share/doc/nano 2) How to find out whether a package is installed or not in Linux, using package manager 2.a) On CentOS / Red Hat (RHEL) 6/7 Use  yum command  or  rpm command  to deter...

Default login form code in laravel

  <div class="container">     <div class="row justify-content-center">         <div class="col-md-8">             <div class="card">                 <div class="card-header">{{ __('Login') }}</div>                 <div class="card-body">                     <form method="POST" action="{{ route('login') }}">                         @csrf                         <div class="form-group row">                             <label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>         ...