Unobtrusive Show/Hide
9
Unobtrusive Show/Hide
/****************
Begin showhide.js
****************/
function init() {
if(!document.getElementsByClassName) return false;
var optionalElements = document.getElementsByClassName('optional');
var optionsShow = document.getElementsByClassName('showOptional');
var optionsHide = document.getElementsByClassName('hideOptional');
for (var i=0;i<optionalElements.length;i++) {
optionalElements[i].style.display = 'none';
}
for (var j=0;j<optionsShow.length;j++) {
optionsShow[j].onclick = function(){showElement(this);}
}
for (var k=0;k<optionsHide.length;k++) {
optionsHide[k].onclick = function(){hideElement(this);}
}
}
function showElement(obj) {
var containerElements = obj.parentNode.parentNode.parentNode.getElementsByTagName('*');
for (var i=0;i<containerElements.length;i++) {
if(/optional/.test(containerElements[i].className)) {
containerElements[i].style.display = 'block';
}
}
}
function hideElement(obj) {
var containerElements = obj.parentNode.parentNode.parentNode.getElementsByTagName('*');
for (var i=0;i<containerElements.length;i++) {
if(/optional/.test(containerElements[i].className)) {
containerElements[i].style.display = 'none';
}
}
}
window.onload = init;
Begin showhide.js
****************/
function init() {
if(!document.getElementsByClassName) return false;
var optionalElements = document.getElementsByClassName('optional');
var optionsShow = document.getElementsByClassName('showOptional');
var optionsHide = document.getElementsByClassName('hideOptional');
for (var i=0;i<optionalElements.length;i++) {
optionalElements[i].style.display = 'none';
}
for (var j=0;j<optionsShow.length;j++) {
optionsShow[j].onclick = function(){showElement(this);}
}
for (var k=0;k<optionsHide.length;k++) {
optionsHide[k].onclick = function(){hideElement(this);}
}
}
function showElement(obj) {
var containerElements = obj.parentNode.parentNode.parentNode.getElementsByTagName('*');
for (var i=0;i<containerElements.length;i++) {
if(/optional/.test(containerElements[i].className)) {
containerElements[i].style.display = 'block';
}
}
}
function hideElement(obj) {
var containerElements = obj.parentNode.parentNode.parentNode.getElementsByTagName('*');
for (var i=0;i<containerElements.length;i++) {
if(/optional/.test(containerElements[i].className)) {
containerElements[i].style.display = 'none';
}
}
}
window.onload = init;






There are currently no comments for this snippet.