Hallo,
ich habe ein Problem mit style.display und dem IE. Das allererste Mal eigentlich, hab den ganzen Tag auf Google gesucht, aber nicht wirklich eine Lösung gefunden.
Also es geht um folgendes: Ich habe ein Formular, auf dem sensible Daten sind. Das Formular steht standardmäßig auf ReadOnly. Nach Eingabe eines Passwortes werden alle Felder editierbar. 3 Felder names Bank, Kontunummer und BLZ sind zusätzlich noch mit dem type="password" versehen. Bekanntlich kann man im IE den type schwer öändern, deswegen habe ich mir gedacht ich mache 6 Inputs, 3 mit type password und die anderen normal. Die normalen verstecke ich solange, bis das erichtige Passwort eingegeben wurde, dann setze ich deren style.display auf ="inline" oder "" und die anderen drei auf "none".
Im Firefox klappts wunderbar, der IE macht Probleme. Er versteckt und zeigt die Felder nicht, es ändert sich einfach gar nix.
Mein Code
Javascript Teil
HTML Teil:
Hat jemand eine Idee, wieso es nicht funktioniert?
Danke und mfG
ich habe ein Problem mit style.display und dem IE. Das allererste Mal eigentlich, hab den ganzen Tag auf Google gesucht, aber nicht wirklich eine Lösung gefunden.
Also es geht um folgendes: Ich habe ein Formular, auf dem sensible Daten sind. Das Formular steht standardmäßig auf ReadOnly. Nach Eingabe eines Passwortes werden alle Felder editierbar. 3 Felder names Bank, Kontunummer und BLZ sind zusätzlich noch mit dem type="password" versehen. Bekanntlich kann man im IE den type schwer öändern, deswegen habe ich mir gedacht ich mache 6 Inputs, 3 mit type password und die anderen normal. Die normalen verstecke ich solange, bis das erichtige Passwort eingegeben wurde, dann setze ich deren style.display auf ="inline" oder "" und die anderen drei auf "none".
Im Firefox klappts wunderbar, der IE macht Probleme. Er versteckt und zeigt die Felder nicht, es ändert sich einfach gar nix.
Mein Code
Javascript Teil
PHP:
<script type="text/javascript">
function check () {
oldp = "<?php echo $result["PASSWORT"] ?>";
hash = hex_md5(document.Formular.opass.value);
if (hash == oldp)
{
document.Formular.vorname.readOnly = false;
document.Formular.nachname.readOnly = false;
document.Formular.mail.readOnly = false;
document.Formular.land.readOnly = false;
document.Formular.plz.readOnly = false;
document.Formular.ort.readOnly = false;
document.Formular.strasse.readOnly = false;
document.Formular.telefon.readOnly = false;
document.Formular.bank.readOnly = false;
document.Formular.blz.readOnly = false;
document.Formular.kontonummer.readOnly = false;
document.Formular.opass.value = "Passwort korrekt!";
document.Formular.opass.type = "text";
document.Formular.opass.readOnly = true;
document.getElementById("bankid").style.display = "inline";
document.getElementById("blzid").style.display = "inline";
document.getElementById("kontonummerid").style.display = "inline";
document.getElementById("bankfake").style.display = "none";
document.getElementById("blzfake").style.display = "none";
document.getElementById("kontonummerfake").style.display = "none";
}
else
{
alert("Falsches Passwort!");
document.Formular.opass.focus();
}
}
</script>
HTML Teil:
HTML:
<span>Bank</span>
<input style="display:inline;margin-left:90px;margin-top:5px;width:500px" readonly="readonly" class="textfeld" id="bankfake" value="<?php echo $result["BANK"] ?>" type="password"/>
<input id="bankid" style="display:none;margin-left:90px;margin-top:5px;width:500px" readonly="readonly" class="textfeld" name="bank" value="<?php echo $result["BANK"] ?>" type="text"/><br />
<?php
if ($result["BLZ"] != 0)
{
$anz= $result["BLZ"];
}
else
{
$anz= "";
}
?>
<span>BLZ</span>
<input style="display:inline;margin-left:97px;margin-top:5px;width:500px" readonly="readonly" class="textfeld" id="blzfake" value="<?php echo $result["BLZ"] ?>" type="password"/>
<input id="blzid" style="display:none;margin-left:97px;margin-top:5px;width:500px" readonly="readonly" class="textfeld" name="blz" value="<?php echo $anz ?>" type="text" /><br />
<span>Kontonummer</span>
<?php
if ($result["KONTONUMMER"] != 0)
{
$anz= $result["KONTONUMMER"];
}
else
{
$anz= "";
}
?>
<input style="display:inline;margin-left:39px;margin-top:5px;width:500px" readonly="readonly" class="textfeld" id="kontonummerfake" value="<?php echo $result["KONTONUMMER"] ?>" type="password"/>
<input id="kontonummerid" style="display:none;margin-left:39px;margin-top:5px;width:500px" readonly="readonly" class="textfeld" name="kontonummer" value="<?php echo $anz ?>" type="text" /><br />
Hat jemand eine Idee, wieso es nicht funktioniert?
Danke und mfG