Si j'ai une textarea
comme var txtarea = $('textarea')
, comment puis-je lui attribuer une valeur à l'aide de la propriété JavaScript value
et non de la propriété jQuery val()
?
Je pense que j'ai besoin de convertir txtarea
en un objet JavaScript, mais comment puis-je?
Vous pouvez utiliser l'opérateur de déréférencement ou la méthode .get()
pour "Récupérer les éléments DOM mis en correspondance par l'objet jQuery."
Exemples:
txtArea[0].value = "something";
ou:
txtArea.get(0).value = "something";
JQuery .get()
le fera pour vous
Sans paramètre,
.get()
renvoie tous les éléments:alert($('li').get());
Avec un index spécifié,
.get()
récupérera un seul élément:($('li').get(0));
... nous pouvons utiliser l'opérateur de déréférencement de tableau pour obtenir l'élément de liste à la place:
alert($('li')[0]);
les objets jQuery sont les objets Javascript.
Vous essayez de vous familiariser avec le monde de la douleur appelé scripting brut DOM.
Tu peux écrire
document.getElementsByTagName("textarea")[0].value = whatever;
Cela va obtenir le premier <textarea>
et définir sa valeur.
Si vous voulez définir des valeurs pour tous, vous aurez besoin d'une boucle.
Vous pouvez également extraire un élément DOM brut d'un objet jQuery en écrivant $(whatever)[0]
.
Vous pouvez extraire le HTMLElement en utilisant la notation de tableau:
$('textarea')[0].value
... obtiendra la valeur du premier élément de la liste $('textarea')
jQuery.
Nous pouvons utiliser la fonction querySelector()
de javascript pour obtenir un objet DOM javascript standard.
Exemple :
<ul id="category"><li><label><input data-id="1" data-label="CBSE" data-filterClass="category" name="category" type="checkbox"> CBSE </label></li>
console.log(document.querySelector('input[data-id="1"]'));
Vous obtiendrez un objet DOM javascript pour un sélecteur donné.