2
votes

Problème lors de la transmission de la valeur getElementById à la valeur de la zone de texte

Je peux voir la valeur scannée (id = "code") sur l'élément p. Comment puis-je remplir la zone de texte avec cette valeur?

En fait, lorsque j'appuie sur le bouton Scan Barcode, la caméra est ouverte et scanne un code-barres EAN13, et la valeur est affichée dans l'élément P (590123 ... est le code-barres). Peut être vu ci-dessous. Mais je veux voir cette valeur dans la zone de texte.

mauvaise sortie

<p id="code">code is appearing here</p>

<input class="form-control" type="text" id="code">
<button onclick="barcode()" type="submit" class="btn btn-primary btn-sm">Scan Barcode</button>
function barcode() {
  var resultElement = document.getElementById("code");
 // setupLiveReader(resultElement)
}


0 commentaires

3 Réponses :


0
votes

Modifiez l' id afin que vous n'ayez qu'un seul id="code" , puis mettez à jour le script pour que resultElement ait l'id de <input...

<p id="code">code is appear here</p>

<input class="form-control" type="text" id="code-input">
<button  onclick="barcode()" type="submit" class="btn btn-primary btn-sm">Scan Barcode</button>

<script>
   function barcode() {
       const resultElement = document.getElementById("code-input");
       setupLiveReader(resultElement);
   }  
</script>


2 commentaires

Je viens de modifier la question. Pouvez-vous le vérifier à nouveau? Merci...


changer "<p id =" code "> le code apparaît ici </p>" en "<p> le code apparaît ici </p>"



0
votes

Vous ne pouvez pas avoir deux éléments avec le même identifiant. Pour obtenir le contenu de la balise p appelez simplement innerHTML dessus. Après cela, définissez la valeur de votre entrée avec le nouvel identifiant.

<p id="code">code is appear here</p>

<input class="form-control" type="text" id="codeInput">
<button  onclick="barcode()" type="submit" class="btn btn-primary btn-sm">Scan Barcode</button>

<script>
function barcode() {
    var resultElement = document.getElementById("code").innerHTML;
    //setupLiveReader(resultElement)
    document.getElementById("codeInput").value = resultElement;
}  
</script>


2 commentaires

Je viens de modifier la question. Pouvez-vous le vérifier à nouveau? Merci...


Cela ne change pas grand-chose. vous avez codeInput comme id sur l'entrée, définissez simplement la valeur de cet élément



0
votes

<p id="valueShow">input value is appear here</p>

<input type="text" id="inputValue">
<button  onclick="getValue()" type="submit">Get Value</button>
function getValue() {
    var resultInputValue = document.getElementById("inputValue").value;
    document.getElementById("valueShow").innerHTML = resultInputValue;
}  


0 commentaires