0

Mit Javascript click event einen Wert in ein Feld schreiben

Mit der html() Funktion habe ich einen <select> Tag und einen <button> angelegt. Wenn ich auf den Button klicke, bekomme ich den ausgewählten Wert..

Wie kann ich den ausgewählten Wert in ein Tabellenfeld schreiben?

Hier ist der Code:

<div style="display: flex;align-items: center;">
    <select id="selection2" class="choice">
        <option value="1">Test 1</option>
        <option value="2">Test 2</option>
        <option value="3" selected>Test 3</option>
        <option value="4">Test 4</option>
    </select>

    <div class="component editor button">
        <input type="button" wight="100%" id="btnSelect2" class="nx-button-text blue" style="padding:0 2em" value="Übernehmen" />
    </div>
</div>

<script type="text/javascript">
var button = document.getElementById('btnSelect2');
var selected = document.getElementById('selection2');
button.addEventListener("click", function(event)
{
    event.preventDefault();
    // Tabelle.Feld = selected.value; <--- wie übergebe ich die Auswahl an das Tabellelfeld?
});
</script>

5 Antworten

null
    • chris.3
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Detlef,

     

    ich stelle mir auch gerade die Frage wie ich Werte aus einem HTML / Javascript Script zurück in die Datenbank schreibe? Hast Du mittlerweile eine Lösung implementiert die Du teilen kannst?

     

    Viele Grüße
    Chris 

    • mirko3
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hi Chris. Vielleicht hilft Dir das als Einstieg. In der demo-DB ist die Feld-ID "A" und eine normale Scriptvariable wird übertragen. Du kannst aber beliebige Variablen aus javascript oder html auslesen. Mirko

      • Michi.1
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Mirko bekommt man das auch in alle Richtungen mit dmfa hin?

      Erstellen kann man die checkboxen dynamisch. Doch wie bekommen Sie die values bzw sind schon als Check (analog zu ninox) gekennzeichnet. Plus der Rückweg... Übergabe an ninox. Array von Check an dmfa?

      <body>
          <div id='container'></div>
          <div>
          <button id='submit'>Create Checkbox</button>
          </div>
      </body>
      <script>

      $(document).ready(function() {
          $('#submit').click(function() {
              var list = [" +
          zz +
          "];
              for (var value of list) {
                $('#container')
                  .append(`<input type='checkbox' id='${value}' name='interest' value='${value}'>`)
                  .append(`<label for='${value}'>${value}</label></div>`)
                  .append(`<br>`);
              }
          })
      });
      </script>

      Das gibt mir alle enthaltenen record als Name zurück, doch die value (Nr des records fehlen ja) fehlt dir bereits als Check gekennzeichneten records aus ninox + die Übergabe des array an ninox zurück.

       

      Kann man eigentlich auch Buttons via "zeudo klick" (Javascript) ansprechen? Die id existiert ja von den Buttons, auch wenn sie nicht ausgelesen wird

      • chris.3
      • vor 1 Jahr
      • Gemeldet - anzeigen

       

      Hallo Mirko,

       

      dank Dir für Deine Antwort. Die Frage ist aber wie beschreibe /ändere ich Ninoxfelder über html/Javascript.

       

      Grüße 

      Chris

      • Michi.1
      • vor 1 Jahr
      • Gemeldet - anzeigen

        kleines Beispiel ... "database.update(idNX5, 'KF' , result5)" .....'KF' ist die ID von dem Objekt in Ninox

      // Datumsfeld Ninox
      <label for=Vorname>Datum</label>
                      <input id=Datum type='date'  value=" +
          format(date(Datum), "YYYY-MM-DD") +
          " >
      <br><br>
      // Auswahlfeld für Ninox
      <select id=Auswahl>
              <option value='1'" +
          if Auswahl = 1 then "selected" end +
          " >erster</option>
      
              <option value='2'" +
          if Auswahl = 2 then "selected" end +
          ">zweiter</option>
      
              <option value='3'" +
          if Auswahl = 3 then "selected" end +
          " >dritter</option>
      
              <option value='0'" +
          if Auswahl = null then "selected" end +
          " >nichts gewählt</option>
      
          </select>
      <br><br>
      // Textfeld Ninox
      <label for=Name>Name</label>
      <input id=Name name=Name type=text placeholder=" +
          Name +
          " 'keine Daten' autofocus>
      <br><br>
      
      <button type=button onclick='myFunction()'>alle ausgefüllten felder aktualisieren / übernehmen</button>
      
      <script>
      function myFunction() {
      
      let result1 = document.querySelector('#Name').value;
      let idNX1 = '" +
          raw(Nr) +
          "';
      if (result1) {
       database.update(idNX1, 'UE' , result1);
      
      var e = document.querySelector('#Auswahl');
      var value = e.value;
      let idNX4 = '" +
          raw(Nr) +
          "';
      database.update(idNX4, 'ZE' , value);
      let result5 = document.querySelector('#Datum').value;
      let idNX5 = '" +
          raw(Nr) +
          "';
      if (result5) {
       database.update(idNX5, 'KF' , result5)
      }