How to change the color of a button when the input field is filled – JavaScript?

Let’s say the following is our button −

<button id="buttonDemo" style="background:skyblue;margin-left:10px;">Press Me</button>

On filling the below input field, the color of the above button should change −

<input type="text" id="changeColorDemo" style="margin-left:10px;margin-top:10px" onkeyup="changeTheColorOfButtonDemo()">


Following is the code −

 Live Demo

<!DOCTYPE html>
<html lang="en">
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="//">
<script src=""></script>
<script src=""></script>
<link href="" rel="stylesheet" />
   <input type="text" id="changeColorDemo" style="margin-left:10px;margin-top:10px"
   <button id="buttonDemo" style="background:skyblue;margin-left:10px;">Press Me</button>
   function changeTheColorOfButtonDemo() {
      if (document.getElementById("changeColorDemo").value !== "") {
         document.getElementById("buttonDemo").style.background = "green";
      } else {
         document.getElementById("buttonDemo").style.background = "skyblue";

To run the above program, save the file name “anyName.html(index.html)”. Righ click on the file and select the option “Open with Live Server” in Visual Studio Code editor.


This will produce the following output on console −

When you write something into the text box, the color of the button will change from sky blue to green as shown below −