Reputation: 113
I am having two input fields. I want to disable the second input field if unless I enter something in first text field. Second input field should get enabled as soon as I enter something in first textfield. Currently I am trying to do it like this but it is not working as desired.
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
</head>
<body>
<input type="text" id="value1" />
<input type="text" id="value2" />
<script>
var val1 = Number(document.getElementById('value1').value)
var val2 = Number(document.getElementById('value2').value)
if(document.getElementById('value1').value===null ||document.getElementById('value1').value===''){
document.getElementById('value2').disabled = true
}
else{document.getElementById('value2').disabled = false }
</script>
</body>
</html>
I am very new to javascript. I need some help here.
Upvotes: 0
Views: 75
Reputation: 1008
The anwser should be working now:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
</head>
<body>
<input type="text" id="value1" onkeyup="myFunction()"/>
<input type="text" id="value2" disabled="disabled" />
<script>
function myFunction() {
var val1 = Number(document.getElementById('value1').value)
var val2 = Number(document.getElementById('value2').value)
if(document.getElementById('value1').value===null ||document.getElementById('value1').value===''){
document.getElementById('value2').disabled = true
}else {
document.getElementById('value2').disabled = false
}
}
</script>
</body>
</html>
Upvotes: 2
Reputation: 101
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
</head>
<body>
<input type="text" id="value1" onblur="Call()"/>
<input type="text" id="value2" />
<script>
var val1 = Number(document.getElementById('value1').value)
var val2 = Number(document.getElementById('value2').value)
document.getElementById('value2').disabled = true
function Call()
{
if(document.getElementById('value1').value===null ||document.getElementById
('value1').value===''){
document.getElementById('value2').disabled = true
}
else{document.getElementById('value2').disabled = false }
}
</script>
</body>
</html>
Upvotes: 0
Reputation: 4100
Add an event listener and check the 1st field value to change the state of the second one:
var val1 = document.getElementById('value1');
val1.addEventListener('keyup', function() {
document.getElementById('value2').disabled = val1.value === "";
});
<input type="text" id="value1" />
<input type="text" id="value2" disabled />
Upvotes: 2