Ich habe die verschiedenen Methoden ausprobiert, die normalerweise funktionieren, aber SmartWizard scheint zu verhindern, dass diese Methoden funktionieren.So deaktivieren Sie die Schaltfläche "Fertig stellen" nach dem ersten Klick
Ich muss die Schaltfläche Fertig stellen deaktivieren und den Text nach dem Klicken ändern, um mehrere Übermittlungen zu verhindern. Egal wo ich den Code platziere, der Bildschirm ändert sich nicht, der Wert der Schaltfläche ändert sich nicht und die Schaltfläche wird nicht deaktiviert.
habe ich versucht, die typische Klick-Funktion ...
$(".actionBar .buttonFinish").click(function(){
$(".actionBar .buttonFinish").addClass("buttonDisabled");
$(".actionBar .buttonFinish").text("Sending...");
});
Ich habe auch versucht, diese Validierung der letzten Schrittes im Rahmen mit und in den FinishCallback direkt vor dem Ajax-Aufruf. Nichts ändert sich, bis der Ajax-Aufruf abgeschlossen ist und der Ajax-Erfolg ausgeführt wird.
UPDATE
Ok, dann ist dies sicher ein Timing-Problem. Wenn der Ajax-Aufruf fehlschlägt, wird die Schaltfläche deaktiviert und der Text wird geändert. Ich muss sicherstellen, dass diese beiden Dinge auftreten, bevor ich zum Ajax-Aufruf übergehe. Bisher habe ich versucht, diese aber es hat nicht funktioniert:
$(".actionBar .buttonFinish").addClass("buttonDisabled").text("Sending...").ajax({
Haben Sie versucht, die Dinge Hinzufügen Protokollierung, Brennen wird der Click-Handler, um sicherzustellen? – Whothehellisthat
Versuchen Sie, jQuerys 'prop' -Funktion zu verwenden, um das' disabled' Attribut true zu setzen: '$ (". ActionBar .buttonFinish "). Prop ('disabled', true);' vorausgesetzt es ist ein '/ 'Element. –
versuchen Sie mit $ (". ActionBar .buttonFinish"). Off ('klicken') – gaetanoM