matp: ID in Iput Value übergeben

problematische Seite

Hallo,

möchte gerne das gebastelte script noch ein wenig verfeinern.

Und zwar.

Sollte oben bei RKSV-Sequenz eingeben z.b. so ein Code eingegebn werden. eyJhbGciOiJFUzI1NiJ9.X1IxLUFUMl8xXzMwNzU0XzIwMTktMDEtMDFUMDM6MDA6MDBfMCwwMF8wLDAwXzAsMDBfMCwwMF8wLDAwX285eUY5aFZKWkNFPV8wMUVFNEIxQkIzNTUwMDU4RDNFMEFGOTk1OF9tOXJHMkMrYzloRT0.wjJfMhwPfNKyX5t8OCFZGh8LM0IjUBQ_j_eAVkQPv0K2bhCFKRRveZDC3Kl5zOusq8HU2piiJuuV7fC86n9M8A

Nach dem drücken von OK sollte der generierte Code gleich unten in das Input Feld "Signatur einfügen und Tab drücken" geschrieben werden und der QR Code sollte sich automatisch aktualisieren ist das überhaupt möglich?

Danke & SG :)

  1. problematische Seite

    Hallo

    möchte gerne das gebastelte script noch ein wenig verfeinern.

    Und zwar.

    Sollte oben bei RKSV-Sequenz eingeben z.b. so ein Code eingegebn werden. eyJhbGciOiJFUzI1NiJ9.X1IxLUFUMl8xXzMwNzU0XzIwMTktMDEtMDFUMDM6MDA6MDBfMCwwMF8wLDAwXzAsMDBfMCwwMF8wLDAwX285eUY5aFZKWkNFPV8wMUVFNEIxQkIzNTUwMDU4RDNFMEFGOTk1OF9tOXJHMkMrYzloRT0.wjJfMhwPfNKyX5t8OCFZGh8LM0IjUBQ_j_eAVkQPv0K2bhCFKRRveZDC3Kl5zOusq8HU2piiJuuV7fC86n9M8A

    Nach dem drücken von OK sollte der generierte Code gleich unten in das Input Feld "Signatur einfügen und Tab drücken" geschrieben werden und der QR Code sollte sich automatisch aktualisieren ist das überhaupt möglich?

    Das ist doch die gleiche Frage, wie die in „Frage zum Wiki“ gestellte, oder? [1]

    Da ich den anderen Thread im Kontext seines Betreffs irreführend empfinde, werde ich selbigen schließen.

    Tschö, Auge

    --
    Ein echtes Alchimistenlabor musste voll mit Glasgefäßen sein, die so aussahen, als wären sie beim öffentlichen Schluckaufwettbewerb der Glasbläsergilde entstanden.
    Hohle Köpfe von Terry Pratchett

    1. Text und Link sind identisch. ↩︎

  2. problematische Seite

    Hallo matp,

    • Einen Zeilenumbruch macht man - wenn überhaupt - mit <br> oder <br/> (XHTML), aber nicht mit </br>. Hast Du zu viele Folgen </scorpion> gesehen?
    • Es ist wirklich nicht sinnvoll, zwei verschiedene jQuery-Versionen einzubinden (1.9 und 1.11)
    • was ist eine RSKV Sequenz?
    • du zerlegst diese Sequenz an den Punkten und bekommst 3 Teile. Du verarbeitest Teil 2 und 3, den ersten Teil nicht. Absicht oder Fehler?
    • deine Funktion decodeBase64Url füllt nur auf ein Vielfaches von 4 Zeichen auf, decodiert aber nichts. Absicht oder Bug?
    • Warum sollte die Sequenz durch Druck auf OK in ein andere Feld kopiert werden? Warum nicht direkt an den Service übergeben?
    • dein OK Button ist ein Button vom Default-Typ, das ist: submit. Aber es gibt kein form. Füge type="button" hinzu.
    • Du kannst dein result statt in ein Ausgabefeld ($('#result').text(result);) auch in das input Feld schreiben: $('#result').val(result);. Das löst natürlich nicht das blur-Event aus. Meine erste Idee war: Verwende nicht blur, sondern change, aber das feuert bei einer Zuweisung über val() auch nicht. Also: (1) Zuweisen und (2) einfach mal generateBarCode() aufrufen.

    Rolf

    --
    sumpsi - posui - clusi
    1. problematische Seite

      Tach!

      • was ist eine RSKV Sequenz?
      • du zerlegst diese Sequenz an den Punkten und bekommst 3 Teile. Du verarbeitest Teil 2 und 3, den ersten Teil nicht. Absicht oder Fehler?

      Sieht nach einem JWT aus. Ist aber im zweiten Teil kein JSON. Die ersten beiden Teile lassen sich mit Base64 dekodieren. Der erste Teil ist nur ein Header mit der Algorithmus-Angabe und hier wohl nicht weiter nützlich.

      dedlfix.

      1. problematische Seite

        Hallo dedlfix,

        den dritten Teil kann man atob decodieren wenn man _ durch / ersetzt und mit == auffüllt, so wie es der Code des OP auch tut.

        Aber das Ergebnis ist eine Sonderzeichenwüste. Möglicherweise deshalb, weil es verkrüppelte Beispieldaten sind.

        Rolf

        --
        sumpsi - posui - clusi
        1. problematische Seite

          Tach!

          Aber das Ergebnis ist eine Sonderzeichenwüste. Möglicherweise deshalb, weil es verkrüppelte Beispieldaten sind.

          Oder weil es wie beim JWT üblich Binärkrams ist.

          dedlfix.

    2. problematische Seite

      Hallo matp,

      es geht weiter. Was tut man nicht alles für seinen Lieblings-Skiort 😉

      Gehörst Du eigentlich zu F&S oder zu ICC?

      • Die Eingabe für das QR-Code Feld musst Du mit encodeURIComponent codieren, andernfalls würden URI-Steuerzeichen wie : / ? oder & (es gibt noch mehr) den Aufruf des QR-Code Service kaputtmachen.
      • Wenn Du in JavaScript eine URL mit Parametern zusammenbaust, darfst Du das & Zeichen nicht HTML-Codieren. Das ist nur nötig, wenn Du das src für das img Element im HTML notierst. Durch dein &amp; wird die Größenangaben mit in den QR-Code hineincodiert.
      • Du solltest Dich mit Dir selbst auf eine QR Größe einigen. Im <img> Element steht 100x100, das Element stylest Du auf 200x200, und im JavaScript setzt Du 50x50. Hm, was denn nun? Die Defaultgröße von qrserver ist 250x250, nimm das doch einfach so wie es ist. Wenn Dir das zu groß ist, dann setze size=200x200 als Parameter für den Service-Aufruf, und lass das <img> in seiner natürlichen Größe (ohne width/height) anzeigen.
      • Wenn Du schon jQuery verwendest, dann auch konsequent. Man kann mit jQuery change- oder blur-Handler für Input-Elemente definieren.

      Ich habe mal in jsFiddle etwas herumgespielt:

      https://jsfiddle.net/Rolf_b/146to78m/

      Deine decodeBase64Url Funktion habe ich runderneuert. Das war zu umständlich.

      Das erwähnte Problem mit &amp in JavaScript ist behoben.

      Den javaScript-Teil kannst Du so, wie er ist, in <script>-Elemente einrahmen. jQuery musst Du vorher, und zwar nur EINMAL, einbinden. Ob die 1.9.1 oder die ohne Version (das ist die 1.11) ist egal.

      <script src="jquery.min.js"></script>
      <script type="text/javascript">>
      ...script aus fiddle hier...
      </script>
      

      Dein HTML und CSS habe ich etwas modernisiert. Input-Elemente brauchen Labels. Ein Text innerhalb eines input ist keine gültige Beschriftung. Statt mit <br/> erzeugt man Abstände besser mit margin oder padding. Einen Header nennt man auch so, dafür gibt es das <header> Element. Meinen <footer> kannst Du weglassen 😀

      Wenn Du kompatibel zu älteren Internet Explorern sein willst, musst Du im CSS noch

      header, footer, main, section {
         display:block;
      }
      

      notieren.

      Rolf

      --
      sumpsi - posui - clusi