comment obtenir la valeur sélectionnée de dropdownlist dans asp.net à l'aide de javascript?
je suis le remplissage de pays dropdownlist à partir de la base de données.j'ai besoin de sélectionner une valeur dans la liste déroulante et l'affecter à la zone de texte à l'aide de javascript.
Code:
var textboxId = document.getElementById("txtCountry");
var dropdownListId =document.getElementById("ddlLocation");
var e = document.getElementById("ddlLocation");
var strUser = e.options[e.selectedIndex].value;
document.getElementById(textboxId).value = strUser;
document.getElementById(textboxId).focus();
en faisant cela, je suis d'erreur .toutes les solutions?
Ce qui concerne
ravi
Quelle erreur avez-vous?
Je viens de la modification de votre code d'indentations, vous avez eu autour d'eux dans le mauvais sens. Si vous souhaitez qu'il s'affiche dans un bloc de code, puis retrait de la ligne par quatre (ou plus) espaces.
En fait, j'ai corrigé, comme vous l'avez fait. Je ne sais pas pourquoi l'op a rollbacked ?
malheureusement, quand je croyais qu'en cliquant sur modifier j'ai cliquez sur restauration. il y je pense que c'était le retour en arrière.
Je viens de la modification de votre code d'indentations, vous avez eu autour d'eux dans le mauvais sens. Si vous souhaitez qu'il s'affiche dans un bloc de code, puis retrait de la ligne par quatre (ou plus) espaces.
En fait, j'ai corrigé, comme vous l'avez fait. Je ne sais pas pourquoi l'op a rollbacked ?
malheureusement, quand je croyais qu'en cliquant sur modifier j'ai cliquez sur restauration. il y je pense que c'était le retour en arrière.
OriginalL'auteur kumar | 2010-03-09
Vous devez vous connecter pour publier un commentaire.
Votre code est faux, Regardez où j'ai fait les modifications dans le même code:
Ce que vous avez fait, vous avez sélectionné votre zone de texte et JS retour d'un élément du DOM de la zone de texte et que vous vouliez remplir par l'adoption de la
DOM
de la zone de texte à l'intérieur de lagetElementById()
fonction.Ici est l'endroit où il s'est cassé:
À utiliser
getElementById()
méthode, vous passez une chaîne de valeur de l'id d'un élément.Espère que cette aide.
C'est ce que j'ai dit 🙂
Désolé slugster, je n'ai pas vérifier votre réponse! 🙂 Les grands esprits pense de même.
Je ne comprends pas, est-ce de travailler ou est-il quelque chose que je dois regarder?
ouais, j'ai changé le peu de code maintenant, c'est très bien. merci beaucoup
OriginalL'auteur Buhake Sindi
Essayer avec:
ou
C'est parce que les id des éléments html dans les documents générés ne correspond pas avec l'id que vous avez utilisé dans votre code. Pour obtenir l'id affecté à votre contrôle dans le code html, vous pouvez utiliser la propriété ClientID de votre liste déroulante.
Un autre problème, c'est que vous attribuez yourhtml élément variable, puis utiliser la fonction getElementById qui n'est pas valide appel.
Cela est changé en ASP.NET 4, qui est sur le point d'être libéré.
Espère que ça aide!
peut-être que vous avez mal saisi l'id. Il doit être l'ID de votre ascx/aspx fichier de la liste de contrôle. exemple: <asp:déroulante id="txtCountry" ...> Si vous publiez votre asp.net le code sera utile.
<asp:TextBox ID="txtCountry" runat="server"><asp:TextBox> <asp:DropDownList ID="ddlLocation" runat="server" width:255px"></asp:DropDownList>
liste déroulante est arriver peuplé de db. lorsque je sélectionne n'importe quel emplacement je veux le lier à la zone de texte.
ensuite, vous devriez être en mesure de prendre de la valeur dans la liste déroulante avec le document.getElementById('<%=ddlLocation.ClientID%>').valeur
OriginalL'auteur anthares
Ces deux lignes:
sont mauvais aussi. Si votre ligne précédente effectivement travaillées:
que ce que vous avez appelé textboxId sera effectivement le contrôle de zone de texte, de sorte que vous aurez à faire un getElementById à l'aide de la commande au lieu d'une chaîne de caractères identifiant.
À suivre sur ce @anthares dit; essayez ceci:
et assurez-vous que vous obtenez la bonne ID de la zone de texte (rappelez-vous qu'il sera munged par ASP.Net au moins assurez-vous que vous n'obtenez pas rien). Ensuite, quand tu fais un document.getElementById vous avez besoin de vérifier le résultat avant de l'utiliser:
Puis reportez-vous à la première partie de ma réponse sur les deux lignes qui sont mauvais.
OriginalL'auteur slugster