ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
315
315
EMPFEHLEN
-
Hallo zusammen,
ich habe ein kleines Problem mit dem enabling von meinen Buttons auf einer Page.
Auf der Page hat es (unter vielen anderen, für dieses Problem aber unwichtigen Dingen) ein Save Button der immer enabed ist, ein Eingabefeld und 2 Buttons von denen jeweils einer, abhängig vom Wert in diesem Eingabefeld, enabled werden soll.
Wenn die Seite das erste mal geladen wird, ist nur der Save-Button enabeld, man gibt einen Wert ein und dürckt auf Save. Der Wert wird gespeichert, die gleiche Seite nochmals geladen und nun sollte abhängig vom vorher eingegebenen Wert einer der beiden anderen Buttons enabeld werden.
Dies ist mit einer Methode programmiert, die beim Laden der Page ausgeführt wird:
window.setTimeout('initialize()',50);
function initialize() {
var targetBewilligtButton = getElement('bewilligtButton');
var targetVorschlagButton = getElement('vorschlagButton');
if(beantragt != '') {
if ( kompetenz <= beantragt) {
targetBewilligtButton.disabled = false;
}
else {
targetVorschlagButton.disabled = false;
}
}
Das Problem ist nun aber, dass die Buttons erst dann enabled werden, wenn ich das erste mal mit der Maus darüber gefahren bin.
Weiss jemand woran das liegen könnte?
-
Der Fehler ist aus dem geposteten Code nicht ersichtlich

Könntest du den kompletten HTML-Code der Seite posten?
-
Ja, das habe ich befürchtet/vermutet.
Das Problem ist, das die Seite aus XML und XSL erstellt wird. Der Generierte HTML Code ist enorm gross, unübersichtlich und somit unleserlich
Ich habe nur gehofft, das vieleicht jemand schon mal ähnliche Probleme hatte.
Aber es ist prinzipiell schon richtig, dass die folgende Zeile beim Aufruf sofort und nicht erst nach einem MousOver enablen sollte oder sehe ich das falsch?
var targetBewilligtButton = getElement(bewilligtButton);
targetBewilligtButton.disabled = false;
Gruss & danke
-
Ja, das sollte so sein. Hast du denn ein mouseover in den Buttons stehen, welches das bewirkt?
Weiterhin:
das verzögerte Ausführen nach 50ms bedeutet nicht unbedingt, dass die Seite schon geladen ist.Dies ist mit einer Methode programmiert, die beim Laden der Page ausgeführt wird:
window.setTimeout('initialize()',50);
Wenn diese Anweisung nicht im Quelltext hinter den Buttons steht, könnte sie Probleme verursachen. Besser wäre stattdessen:
(Beachte dabei, dass dort die Klammern hinter dem Funktionsnamen fehlen...das muss so seinCode :1
window.onload=initialize;
)
-
So wie es aussieht stimmt etwas mit meinem StyleSheet nicht, da passieren ganz seltsame Dinge...
Ich habe nun mal zu Testzwecken die geamte Logik umgekehrt und versuche die Buttons per Javascript zu disablen anstatt zu enablen. Und siehe da, es funktioniert.
Ich belasse das nun mal so, ist zwar nicht ganz das was ich wollte, aber Hauptsache es funktioniert.
Gruss und besten dank für eure Hilfe.
Ähnliche Themen
-
Flash catalyst Buttons werden nicht angezeigt.
Von hintzsche im Forum Flash PlattformAntworten: 0Letzter Beitrag: 28.12.10, 05:22 -
Controls zB ListCtrl und Buttons(Ownerdraw) werden manchmal nicht richtig dargestellt
Von Rubikon im Forum VisualStudio & MFCAntworten: 0Letzter Beitrag: 22.06.10, 08:59 -
Buttons auf dem JEditorPane lassen sich nicht richtig löschen
Von Lautsprecher im Forum JavaAntworten: 2Letzter Beitrag: 26.07.07, 12:38 -
dynamische grafische Buttons --> funktioniert nicht richtig
Von Sammy1979 im Forum Javascript & AjaxAntworten: 5Letzter Beitrag: 18.08.06, 16:55 -
Buttons in Dialog werden nicht angezeigt
Von Wu-mc im Forum C/C++Antworten: 5Letzter Beitrag: 01.12.05, 21:58





Zitieren

Login





