user2966448
user2966448

Reputation: 39

JS can't get my true/false function to display the false output only the true output

I need to write a good that will validate if a number is in between a range of two numbers I can only get the number is valid output no matter what i input in my text box.

 function validInputRange(min, max, textbox) {
     if (textbox >= min && textbox <= max) {
         return true;
     } else {
         return false;
     }
 }
 function btnValidate_onclick() {
     // assign textbox elements to variables for easier access
     var numberTextbox = document.getElementById("txtNumber");
     var input = parseFloat(numberTextbox.value);
     var output = validInputRange(1, 49, numberTextbox.value);
     if (output = true) {
         var answer = "valid";
         numberTextbox.style.backgroundColor = "#00ff00";
     } else {
         answer = "false";
         numberTextbox.style.backgroundColor = "#ff0000";
     }
     numberTextbox.value = answer;
 }

Upvotes: 2

Views: 53

Answers (1)

suff trek
suff trek

Reputation: 39777

Instead of

if (output = true)

Just do

if (output)

or

if (output == true)

= is used for assignment, while == or === for comparing.

Upvotes: 3

Related Questions