Christian Kruse: Autovervollständigung

Beitrag lesen

Hallo hmm,

Für jede Buchstabeneingabe eine JsonRequest ans Backend plus eine Datzugehörige Sql Abfrage, alternativ kennt der Client alle vorhandenen Nutzernamen. Gehts besser?

Setze bei feuern des input-Events einen Timeout (etwa auf 500ms), der das Autocomplete anfordert. Besteht bereits ein Timeout, lösche es vorher. Etwa so:

(function(element) {
  var tm = null;
  var autocomplete = function() {
    // …
  };

  element.addEventListener('input', function() {
    if(tm) {
      window.clearTimeout(tm);
    }

    tm = window.setTimeout(autocomplete, 500);
  });
})(the_element);

So kommt kein Request zum Server, solange der User tipp; wenn er aufhört, wird der Request gestellt und die Autovervollständigung angeworfen. Man „wartet” sozusagen auf den User.

LG,
CK

0 49

Autovervollständigung

hmm
  • datenbank
  • html
  • javascript
  1. 0
    dedlfix
  2. 2
    Christian Kruse
    1. 0
      Robert R.
      • javascript
      1. 0
        Christian Kruse
        1. 0
          Robert R.
          1. 2
            Christian Kruse
            1. 0
              Robert R.
              1. 0
                Christian Kruse
            2. 0
              dedlfix
            3. 0
              Matthias Apsel
              1. 0
                Christian Kruse
                1. 0
                  Matthias Apsel
                  1. 0
                    RR
                    • javascript
                    • selfhtml-wiki
                    1. 0
                      dedlfix
                    2. 0
                      Christian Kruse
                      1. 0
                        RR
                        1. 0
                          Christian Kruse
                          1. 0
                            RR
                            1. 0
                              Christian Kruse
                              1. 0
                                RR
                                1. 0
                                  Christian Kruse
                                  1. 2
                                    Rolf b
                                    1. 1
                                      Christian Kruse
                                      1. 0
                                        Matthias Apsel
                                      2. 0
                                        Rolf b
                                        1. 0
                                          Christian Kruse
                                          1. 0
                                            Rolf b
                                            1. 0
                                              Christian Kruse
                                              1. 0
                                                JürgenB
                                                1. 0
                                                  Christian Kruse
                                                  1. 0
                                                    JürgenB
                                                    1. 0
                                                      Gunnar Bittersmann
                                                      • mobile
                                                      1. 0
                                                        Christian Kruse
                                                        1. 0
                                                          JürgenB
                                                      2. 0
                                                        Rolf b
                                                        1. 0
                                                          Christian Kruse
                                                          • humor
                                                          • menschelei
                                                          1. 0
                                                            Rolf b
                                                            • humor
                                                            • menschelei
                                                            • sport
                                                            1. 0
                                                              JürgenB
                                                              1. 0
                                                                Gunnar Bittersmann
                                                                1. 0
                                                                  JürgenB
                                                            2. 0
                                                              Christian Kruse
  3. 0
    Martl
    1. 0
      Camping_RIDER
      1. 0
        Martl
  4. 0
    Gunnar Bittersmann
    1. 0
      hmm
    2. 0
      Camping_RIDER
  5. 0
    hmm