Reputation: 229
I would like the button on my web page to toggle the visibility of my two check-boxes.
How do I go about implementing such functionality?
<html>
<head>
<script language=javascript>
function validate(chk){
if (chk.style.visibility == 'visible')
chk.style.visibility = 'hidden';
else
chk.style.visibility = 'visible';
}
</script>
</head>
<body>
<form><span id=t style.visibility="visible" >
<input type=checkbox name=chk1>Please Check Me</span>
<input type=checkbox name=chk1>Please Check Me</span>
<p><input type=button value="check" onclick="return validate(t);">
</form>
</body>
</html>
Upvotes: 0
Views: 17475
Reputation: 66445
You're not giving any object to the function. A quick fix is:
return validate(document.getElementById('t'));
Also, this HTML is wrong. It should be:
<span id="t" style="visibility:visible" >
Upvotes: 1
Reputation: 268374
It's a good practice to keep your JavaScript code and CSS out of your HTML.
<span id="t">
<input type="text" />
<input type="text" />
</span>
<button id="toggler">Toggle</button>
For the JavaScript code, we look up the two elements via their ID. We then attach some logic to the onclick
method of the button itself. This logic checks the present value of the display
style on the span element. If it's visible, we hide it. If it's hidden, we show it.
document.getElementById("toggler").onclick = function(){
var s = document.getElementById("t");
(s.style.display == "none") ? s.style.display = "" : s.style.display = "none";
};
Online demo: http://jsbin.com/iyiki/2/edit
Upvotes: 1