Hallo,
ich habe da ein kleines Problem.
Wenn die Checkbox aktiviert wird, werden Radio und Textarea ent"disabled" ;)
Tritt beim Submit, der Überprüfung, ein Fehler auf, werden Radio und Textarea wieder "disabled" obwohl die Checkbox noch aktiv ist.
Wo liegt das Problem?
Gruß
PHP-Code:
<?php header ('Content-Type: text/html; charset=utf-8');
error_reporting(E_ALL);
//-----------------------------------------------
/* Fehlerauswertung */
$errorFelder = array();
$error = null;
$felder = array("beschreibung");
// start Überpruefung der Eingabe
if(isset($_POST['ueberpruefung'])) {
$error = false;
foreach($felder as $feld) {
if("" ==($_POST[$feld]) or "*" ==($_POST[$feld]) or "Bitte auswählen!" ==($_POST[$feld])) {
$error = true;
$errorFelder[$feld] = true;
}
}
}if($error === false) {
echo "<b>Alles i.O.!</b>";
} else {
if($error === true)
echo "<b>Bitte alle Felder ausfüllen!</b>";
?>
<!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" xml:lang="de" lang="de">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=8" />
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>test</title>
<style type="text/css">
textarea {
width: 200px;
height: 50px;
background-color: #f3f8fb;
}
</style>
<script type="text/javascript">
function DoTheCheck() {
if(document.myform.check1.checked == true)
{ alert('box1 ist aktiviert'); }
if(document.myform.check1.checked == false)
{ alert('box1 ist deaktiviert'); }
}
function gesperrt(chk){
var felder = new Array('radio1', 'radio2', 'beschreibung');
var i;
if(document.getElementById){
for (i=0; i<felder.length; i++)
if(chk){
document.getElementById(felder[i]).style.backgroundColor = "#ffffff";
document.getElementById(felder[i]).disabled = false;
}
else {
document.getElementById(felder[i]).style.backgroundColor = "#f3f8fb";
document.getElementById(felder[i]).disabled = true;
}
}
}
</script>
</head>
<body>
<form name="myform" method="post" accept-charset="utf-8" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF'])?>">
<!-- Element 1 -->
<input type="checkbox" name="check1" id="check1" onclick="gesperrt(this.checked)" value="ON" <?php if(isset($error) and $_POST['check1'] == "ON") {echo "checked";} ?> />
<!-- Element 2 -->
<label for="radio1">Ja
<input type="radio" name="radio" id="radio1" value="JA" disabled='disabled'/>
</label>
<!-- Element 3 -->
<label for="radio2">Nein
<input type="radio" name="radio" id="radio2" value="NEIN" checked="checked" disabled='disabled'/>
</label>
<!-- Element 4 -->
<textarea name="beschreibung" id="beschreibung" disabled='disabled'<?php if(isset($errorFelder['beschreibung'])) echo 'class="error"'; ?>><?php echo ($_POST['beschreibung']);?></textarea>
<!-- UI Button -->
<input type="hidden" name="ueberpruefung" value="1">
<input type="submit" id="submitButton" name="submitButton" value="Speichern" onClick="DoTheCheck()" />
</form>
<?php
}
?>
</body>
</html>