ajax und jquery barcode scanner?

3 Antworten

Ich seh keinen Grund das in ein form-tag zu packen. Dann machst du einfach sowas in der art

barcode.bind("keyup input paste", function() {
    if (barcodeIsValid()) {
        sendRequest();
    }
});

in barcodeIsValid() überprüfst du ob der barcode ein gültiger ist (weiß nicht ob die immer nen festen aufbau, also länge oder sowas haben) und dann sendest du das zu deinem server. (evtl gibts für sowas sogar was clientseitiges oder?)

dein server sendet dann entweder ein ergebnis oder eben nichts. das überprüfst du dann in

...
success: function(data) {
    if (data.was_valid) {
        $("#ud_form").reset();
        $("#ud_output").html(data.text);
    }
}

irgendwie so sollte das auch ohne irgendeine art timeout möglich sein.

falls du das wirklich mit timeout machen willst (was allerdings alles andere als eine gute lösung dafür ist) dann könntest du zb sowas machen

let active = false;

...

success: function(data) {
    if (!active) {
        $("#ud_form").reset();
        $("#ud_output").html(data.text);
    }

    active = true;
    setTimeout(function() {
        active = false;
    }, 5000);
Woher ich das weiß:Studium / Ausbildung – Softwareentwickler, B. Sc. Informatik

jajaja3 
Beitragsersteller
 08.08.2019, 09:57

es funktioniert leider mit keiner Funktion die Sie geschrieben haben

0
Tyldu  08.08.2019, 16:32
@jajaja3

woran scheiterts denn?

du musst natürlich die fehlenden funktionen selbst implementieren und das ganze auch an die richtige stelle schreiben.

0

Hast du einmal geprüft, wie oft das keyup-Event ausgelöst wird? Ich denke, dass du den Request öfter als einmal abschickst.

Du resettest doch das Outputfenster garnicht, oder ist $('#ud_form')[0] dein Outputfenster?

Funktioniert es denn ohne das Reset?


jajaja3 
Beitragsersteller
 07.08.2019, 14:58

das ist es ja, wenn ich die funktion mit submit schreibe, den code scanne und dann enter drücke funktioniert alles und er zeigt mir auch alles an, aber wenn ich submit zu keyup ändere, den code dann scanne, fügt er ihn ein, führt automatisch das script aus und zeigt das ergebniss ganz kurz an und dann ist es wieder weg

0
Destranix  07.08.2019, 15:00
@jajaja3

Hast du den Code evtl. in kopierbar, dann kann ich mir das mal anschauen...

0
Destranix  07.08.2019, 15:00
@jajaja3

Ich habe bisher immer nur .append verwendet, um Daten einzufügen.

0