Ich fasse mal zusammen:
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title></title>
<style type="text/css">
/* siehe body-onLoad
div#two {
display: none;
}
*/
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
var toggleJQuery = function (idShow , idHide) {
var elementShow = $('#' + idShow);
var elementHide = $('#' + idHide);
elementShow.show();
elementHide.hide();
if (useDisable) {
$("input" , elementShow).removeAttr("disabled");
$("input:not(:submit)" , elementHide).attr("disabled", "disabled");
}
}
var toggleNative = function (idShow , idHide) {
var elementShow = document.getElementById(idShow);
var elementHide = document.getElementById(idHide);
elementShow.style.display = "block";
elementHide.style.display = "none";
if (useDisable) {
var elements = elementShow.getElementsByTagName("INPUT");
for (var i = 0, x = elements.length; i < x; ++i) {
elements[i].disabled = false;
}
elements = elementHide.getElementsByTagName("INPUT");
for (var i = 0, x = elements.length; i < x; ++i) {
elements[i].disabled = true;
}
}
}
var useJQuery = true;
var useDisable = true;
if (useJQuery) {
var show1 = function () {
toggleJQuery ('one' , 'two');
}
var show2 = function () {
toggleJQuery ('two' , 'one');
}
} else {
var show1 = function () {
toggleNative ('one' , 'two');
}
var show2 = function () {
toggleNative ('two' , 'one');
}
}
// für body-onLoad, ersetzt das Stylesheet oben
var toggleInit = function () {
show1 ();
}
</script>
</head>
<body onLoad="toggleInit();">
<form action="" method="post">
<div id="one">
1
<input type="text" />
<input type="submit" />
</div>
<div id="two">
2
<input type="text" />
<input type="submit" />
</div>
<div>
<input type="button" onclick="show1();return false" value="show 1" />
<input type="button" onclick="show2();return false" value="show 2" />
</div>
</form>
</body>
</html>