J'ai une application mvc asp.net et j'essaie d'attribuer dynamiquement de la valeur à ma zone de texte, mais elle ne semble pas fonctionner (je teste uniquement sur IE pour le moment). C'est ce que J'ai maintenant ..
document.getElementsByName('Tue').Value = tue;
(d'ailleurs la mar est une variable)
J'ai également essayé cette variante mais cela n'a pas fonctionné non plus.
document.getElementsById('Tue').Value = tue;
(d'ailleurs la mar est une variable)
Quelqu'un peut-il me dire où je me trompe?
C'est document.getElementById , pas document.getElementsByID
Je suppose que vous avez <input id="Tue" ...>
quelque part dans votre balisage.
Comment adresser votre zone de texte dépend du code HTML:
<!-- 1 --><input type="textbox" id="Tue" />
<!-- 2 --><input type="textbox" name="Tue" />
Si vous utilisez l'attribut 'id':
var textbox = document.getElementById('Tue');
pour "nom":
var textbox = document.getElementsByName('Tue')[0]
(Notez que getElementsByName () renvoie des éléments all avec le nom comme tableau, nous utilisons donc [0] pour accéder au premier)
Ensuite, utilisez l'attribut 'value':
textbox.value = 'Foobar';
Si vous utilisez Chrome, déboguez avec la console. Appuyez sur MAJ + CTRL + j pour afficher la console à l'écran.
Croyez-moi, ça aide beaucoup.
Il y a deux problèmes dans votre code.
getElementByName
au lieu de getElement**s**ByName
value
en minuscules au lieu de Value
.On dirait que nous devons supposer que le nom et l'ID de votre zone de texte sont tous deux définis sur "Mar". Si tel est le cas, essayez d'utiliser un V en minuscule sur .value.
Comme le pluriel dans getElementsByName()
l'indique, retourne-t-il toujours la liste des éléments qui portent ce nom. Donc, quand vous avez un élément d'entrée avec ce nom:
<input type="text" name="Tue">
Et c'est le premier avec ce nom, vous devez utiliser document.getElementsByName('Tue')[0]
pour obtenir le premier élément de la liste des éléments avec ce nom.
A côté de cela, les propriétés sont sensibles à la casse et l'orthographe correcte de la propriété value est .value
.
Vous pouvez utiliser
formname.textboxname.value="delete";