2.6k Aufrufe
Gefragt in Anwendungen(Java,C++...) von timoxy Mitglied (133 Punkte)
Guten Tag,

ich habe hier eine Funktion die nicht ganz funktioniert.


javascript.js
function check(medium){
if( medium == 2){
document.gewohnheit.file_klein.removeAttribute('disabled');
}

if( medium == 1){
document.gewohnheit.file_klein.setAttribute('disabled');
}

}


html.html
<form name="gewohnheit" action="#" method="POST" enctype="multipart/form-data">

<input type="Radio" onclick="check(1)" name="medium" value="b">Bild
<input onclick="check(2)" type="Radio" name="medium" value="f">Film


<input disabled type="file" name="file_klein" size="40">

</form>


Erklärung:

Mein Wunsch ist es, dass wenn der "f"-Radio-Button angeklickt wird das "disabled" im input entfernt wird.

Dies funktioniert auch ohne Problem.

Nur ist es nun so, dass wenn nach dem klick auf "f" auf "b" geklickt wird, wird die Attribute "disabled" nicht mehr wieder in input eingefügt.

Kann mir jemand bitte helfen und sagen, wo der Fehler ist.

LG Timoxy

6 Antworten

0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
document.gewohnheit.file_klein.setAttribute('disabled', 'disabled');
sollte es eigentlich sein.
0 Punkte
Beantwortet von timoxy Mitglied (133 Punkte)
Danke son_quatsch, aber deine Idee hat das Problem nicht gelöst.

ich bitte um weitere Lösungsvorschläge, Danke.

LG Timoxy
0 Punkte
Beantwortet von kicia Mitglied (939 Punkte)
Hallo timoxy,

mit den gegebenen Informationen ist das Problem durch den Vorschlag von son_quatsch aber doch gelöst, wie ich das sehe.

dieser Code funktioniert in FF3.0.6 und IE6:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>Test</title>
<script type= "text/javascript">
function check( medium )
{
var d = new Date();
if( medium == 2 ) { document.gewohnheit.file_klein.removeAttribute('disabled'); }
if( medium == 1 ) { document.gewohnheit.file_klein.setAttribute('disabled','disabled'); }
}
</script>
</head>
<body>
<form name="gewohnheit" action="#" method="POST" enctype="multipart/form-data">
<input type="Radio" onclick="check(1)" name="medium" value="b">Bild
<input type="Radio" onclick="check(2)" name="medium" value="f">Film
<input disabled type="file" name="file_klein" size="40">
</form>
</body>
</html>


Gruß, kicia
0 Punkte
Beantwortet von timoxy Mitglied (133 Punkte)
Hei,

jetzt tut es plötzlich, obwohl ich nur kicias javascript befehle in meine *.js datei kopiert habe. Das hat vorher nicht funktioniert. ... komisch, aber wahrscheinlich hat sich doch noch irgendwo ein Fehler eingeschlichen...

ich danke euch beiden!

Kann mir jetzt aber noch jemand sagen, was

var d = new Date();


bewirkt und bedeutet??

LG Timo
0 Punkte
Beantwortet von kicia Mitglied (939 Punkte)
oh, entschuldigung.
das sollte eigentlich raus. hat da nix zu suchen.

trotzdem:
d wird dadurch zu einem Datumsobjekt. siehe selfhtml / date / get_time

kannst Du aber löschen.

Gruß, kicia
0 Punkte
Beantwortet von timoxy Mitglied (133 Punkte)
Danke schön, hab mir sowas in der art gedacht.

LG
...