$('input[data-x=?').val(data[?]);
5 Réponses :
Non, ce n'est pas possible avec Si vous essayez d'one-la ligne, vous pouvez faire P> .val () code>. En sélectionnant plusieurs entrées et en définissant la valeur de l'objet JQuery, vous appliquerez la même valeur à l'ensemble de la collection d'éléments. $('input').each( item => $(item).val(data[ $(item).attr('data-x') ]) );
peut être quelque chose comme ça?
p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type='text' class='einp' data-x=0> <input type='text' class='einp' data-x=1> <input type='text' class='einp' data-x=2>
Vous ne pouvez pas faire cela sans boucle, bien que vous puissiez optimiser votre code:
p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type='text' class='einp' data-x = 0> <input type='text' class='einp' data-x = 1> <input type='text' class='einp' data-x = 2>
Vous pouvez utiliser une bibliothèque de liaison de données simple comme knockoutjs p>
Si vous vous inquiétez de l'ajout d'une autre bibliothèque et que vous avez aussi une compétence pour JavaScript, juste Google Fondamentalement, vous avez un objet avec une propriété définie pour chaque zone de texte et getter et Setter se liera à l'événement TextBox. afin que vous puissiez avoir un mécanisme de liaison de données de manière simple simple. p> Reliure de données dans JavaScript code>. Vous pouvez trouver de nombreux articles p>