Doppelte Eingabe

Diskutiere Doppelte Eingabe im HTML / CSS / JScript / AJAX Bereich.
iman

iman

Hi ,

ich möchte in mein HTML Seite keine gleiche Eingabe haben. Ist es möglich? wenn ja, wie ist es?

ich lasse meine HTML code auch hier.

HTML:
<html>
<head>
<title>input</title>
</head>
<body>

    <h2>Lotto Spiel!</h2>
    <br>
    <output name="monitor"></output>
    
    <form method="GET" action="result" >
        Erste Zahl : <input name="input" id="input" type="number" min="1" max="49" required/>
        Zweite Zahl : <input name="input1" id="input1" type="number" min="1" max="49" required/>
        Dritte Zahl : <input name="input2" id="input2" type="number" min="1" max="49" required/>
        Vierte Zahl : <input name="input3" id="input3" type="number" min="1" max="49" required/>
        Fünfte Zahl : <input name="input4" id="input4" type="number" min="1" max="49" required/>
        Sechste Zahl : <input name="input5" id="input5" type="number" min="1" max="49" required/>
        <br>
        <br>
        <input type="submit" name="submit" />
        
        </form>
</body>
</html>
 
mihe7

mihe7

Vor dem schließenden body-Tag etwas wie
Javascript:
  <script>
      function checkForm(evt) {
          let frm = evt.target;
          let inputs = Array.from(frm.querySelectorAll("input[type='number']"))
              .map(function(elem) { return elem.value; })
          let unique = new Set(inputs)
          if (unique.size != inputs.length) {
              window.alert('Bitte keine Duplikate eingeben')
              evt.preventDefault()
          }
      }
      document.querySelector("form").addEventListener("submit", checkForm);
  </script>
einfügen.
 
iman

iman

Vor dem schließenden body-Tag etwas wie
Javascript:
  <script>
      function checkForm(evt) {
          let frm = evt.target;
          let inputs = Array.from(frm.querySelectorAll("input[type='number']"))
              .map(function(elem) { return elem.value; })
          let unique = new Set(inputs)
          if (unique.size != inputs.length) {
              window.alert('Bitte keine Duplikate eingeben')
              evt.preventDefault()
          }
      }
      document.querySelector("form").addEventListener("submit", checkForm);
  </script>
einfügen.


danke dir , es funktioniert
 
iman

iman

Vor dem schließenden body-Tag etwas wie
Javascript:
  <script>
      function checkForm(evt) {
          let frm = evt.target;
          let inputs = Array.from(frm.querySelectorAll("input[type='number']"))
              .map(function(elem) { return elem.value; })
          let unique = new Set(inputs)
          if (unique.size != inputs.length) {
              window.alert('Bitte keine Duplikate eingeben')
              evt.preventDefault()
          }
      }
      document.querySelector("form").addEventListener("submit", checkForm);
  </script>
einfügen.
Wenn ich möchte , das Programm mir sagen , in welchem field haben wir Duplikate ,dann was soll ich mache?
 
mihe7

mihe7

Müsste in etwa so funktionieren:

Javascript:
<script>
      function checkForm(evt) {
          let frm = evt.target;
          let inputElements = Array.from(frm.querySelectorAll("input[type='number']"))
          let inputs = inputElements.map(function(elem) { return elem.value; })
          let unique = new Set(inputs)
          let dupes = new Set()
          if (unique.size != inputs.length) {
              for (let i = 0; i < inputElements.length; i++) {
                  if (!unique.delete(inputElements[i].value)) {
                      dupes.add(inputElements[i].name)
                  }
              }
              console.dir(dupes)
              window.alert('Bitte keine Duplikate eingeben: ' + dupes)
              evt.preventDefault()
          }
      }
      document.querySelector("form").addEventListener("submit", checkForm);
  </script>
Das Ergebnis erhältst Du auf der JavaScript-Konsole im Browser.
 
iman

iman

Müsste in etwa so funktionieren:

Javascript:
<script>
      function checkForm(evt) {
          let frm = evt.target;
          let inputElements = Array.from(frm.querySelectorAll("input[type='number']"))
          let inputs = inputElements.map(function(elem) { return elem.value; })
          let unique = new Set(inputs)
          let dupes = new Set()
          if (unique.size != inputs.length) {
              for (let i = 0; i < inputElements.length; i++) {
                  if (!unique.delete(inputElements[i].value)) {
                      dupes.add(inputElements[i].name)
                  }
              }
              console.dir(dupes)
              window.alert('Bitte keine Duplikate eingeben: ' + dupes)
              evt.preventDefault()
          }
      }
      document.querySelector("form").addEventListener("submit", checkForm);
  </script>
Das Ergebnis erhältst Du auf der JavaScript-Konsole im Browser.

Müsste in etwa so funktionieren:

Javascript:
<script>
      function checkForm(evt) {
          let frm = evt.target;
          let inputElements = Array.from(frm.querySelectorAll("input[type='number']"))
          let inputs = inputElements.map(function(elem) { return elem.value; })
          let unique = new Set(inputs)
          let dupes = new Set()
          if (unique.size != inputs.length) {
              for (let i = 0; i < inputElements.length; i++) {
                  if (!unique.delete(inputElements[i].value)) {
                      dupes.add(inputElements[i].name)
                  }
              }
              console.dir(dupes)
              window.alert('Bitte keine Duplikate eingeben: ' + dupes)
              evt.preventDefault()
          }
      }
      document.querySelector("form").addEventListener("submit", checkForm);
  </script>
Das Ergebnis erhältst Du auf der JavaScript-Konsole im Browser.

Danke schön, ich habe außer let dupes einen Array liste hingestellt. Dan nach in Fehler Meldung die Namen von Duplikate Eingabe uns zuruck geben.
 
Thema: 

Doppelte Eingabe

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben