Zurück   Flashforum > Alternative Technologien > JavaScript & jQuery

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 15-08-2009, 10:28   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 780
Disabled Elemente vor Submit wieder aktivieren

Hallo,

ich habe momentan ein kleines Problem:

Ich habe ein Formular, wo manche Daten disabled sind, da sie beim Aufruf der Seite generiert werden und nicht geändert werden dürfen.

Jetzt werden diese Daten aber beim Submit überhaupt nicht abgeschickt, weil sie eben disabled sind.

Formular wird per Button abgesendet:
PHP-Code:
document.forms['einsatzdaten'].submit() 

Führe ich jetzt vorher noch die folgende Funktion aus, dann wird das Formular noch nicht mal mehr abgesendet... ?!

Wo ist der Fehler?!

PHP-Code:
function submithidden(obj)
{

    
theForm obj;
    var 
0;
    for (
0document.forms['theForm'].elements.lengthi++)
    {
        if (
document.forms['theForm'].elements[i].tagName == "INPUT" && document.forms['theForm'].elements[i].type == "text")
        {
            if (
document.forms['theForm'].elements[i].disabled == "disabled")
            {    
                var 
newElement;
                
newElement document.createElement("INPUT");
                
newElement.type "hidden";
                
newElement.name document.forms['theForm'].elements[i].name;
                
newElement.value document.forms['theForm'].elements[i].value;
                
document.forms['theForm'].appendChild(newElement);
                
newElement null;
            }
        }
    }

return 
true;


Vielleicht ist mir ja noch zu helfen

Ich sag schonmal vielen Dank!
Noir0x ist offline   Mit Zitat antworten
Alt 17-08-2009, 13:28   #2 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 780
So,
habe es jetzt per readonly gelöst. Sieht zwar nicht so schön aus wie ein disabled-Feld, aber naja.

Kann man wohl nix machen. Außer jemand findet noch den Fehler
Noir0x ist offline   Mit Zitat antworten
Alt 18-08-2009, 09:40   #3 (permalink)
Nord-Workoholic
 
Benutzerbild von TinKim
 
Registriert seit: Mar 2004
Ort: Kiel
Beiträge: 937
Bau nen eigenen Submit-Button, der aber kein <input type="submit" ... /> ist. Auf den legst Du ein onclick-Ereignis, das die disabled/enabled-Aktionen entsprechend ausführt und dann am <form>-Tag, das Du Dir per document.getElementById() holst .submit() aufrufst. Ich glaube aber auch, onclick wird aber auch vor dem Submit ausgeführt.
TinKim ist offline   Mit Zitat antworten
Alt 18-08-2009, 13:22   #4 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 780
Zitat:
Zitat von TinKim Beitrag anzeigen
Auf den legst Du ein onclick-Ereignis, das die disabled/enabled-Aktionen entsprechend ausführt und [...]
jaa das steht ja alles oben ;-)

Was ich suche, ist diese disabled/enabled-Aktion. Die oben tuts nämlich leider nicht
Noir0x ist offline   Mit Zitat antworten
Alt 18-08-2009, 13:35   #5 (permalink)
Nord-Workoholic
 
Benutzerbild von TinKim
 
Registriert seit: Mar 2004
Ort: Kiel
Beiträge: 937
Entschuldige, ich habe schlecht bis gar nicht gelesen.

Du prüfst auf disabled falsch. Die disabled-Eigenschaft funktioniert so:
Code:
var myElementHandle = document.getElementById("myElement");
if (myElementHandle.disabled)
{
  myElementHandle.disabled = false;
}
> .disabled == "disabled"
ist einfach falsch
TinKim ist offline   Mit Zitat antworten
Alt 18-08-2009, 13:50   #6 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 780
Jaaa ok.

Jetzt hab ichs geändert und es geht

Noch eine Frage:

Was ist besser?

a) disabled = false setzen und dann absenden
b) aus jedem disabled ein hidden ans ende dransetzen.

Beides mal kriege ich alle Variablen jetzt übergeben.
Nur welcher Weg ist der saubere?
Noir0x ist offline   Mit Zitat antworten
Alt 18-08-2009, 14:10   #7 (permalink)
Nord-Workoholic
 
Benutzerbild von TinKim
 
Registriert seit: Mar 2004
Ort: Kiel
Beiträge: 937
Was meinst Du mit "b) aus jedem disabled ein hidden ans ende dransetzen."? Klingt jedenfalls merkwürdig, also sag ich einfach mal a)
TinKim ist offline   Mit Zitat antworten
Alt 18-08-2009, 14:54   #8 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 780
Also b) heißt im Klartext:

Jedes Feld, dass ich als disabled finde, wird dupliziert und in ein hidden-Feld ans Ende des Formulars gesetzt, dann wird das ganze abgeschickt.

a) oder b)

PS: Telefonjoker gibts nich
Noir0x ist offline   Mit Zitat antworten
Alt 18-08-2009, 15:40   #9 (permalink)
Nord-Workoholic
 
Benutzerbild von TinKim
 
Registriert seit: Mar 2004
Ort: Kiel
Beiträge: 937
Okay, jetzt verstehe ich. Find ich beides grütze ;-)
Ich würde die Zusatzinformation irgendwie in Form permanent vorhandener <input type="hidden" .../> setzen, das dürfte erheblich einfacher zu handlen sein.
TinKim ist offline   Mit Zitat antworten
Alt 18-08-2009, 16:57   #10 (permalink)
Nord-Workoholic
 
Benutzerbild von TinKim
 
Registriert seit: Mar 2004
Ort: Kiel
Beiträge: 937
Bei der zweiten läufst Du jedenfalls nicht Gefahr, dass da kurz was auflackert beim Submit, was den Benutzer verwirren könnte.
TinKim ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:01 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele