Damner ComboBox!!!!

Signaler
Messages postés
21
Date d'inscription
jeudi 23 octobre 2003
Statut
Membre
Dernière intervention
30 mars 2004
-
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
-
Bonjour à tous!

Alors, voici ce que je tente de faire:

Je tente de faire "apparaitre" un 2ème combobox après avoir sélectionner une élément dans le premier qui lui est déjà visible au départ.

En d'autre mot, le second n'est pas visible tant et aussi longtemps qu'une selection n'a pas été effectuer dans le premier.

En vain j'ai tenter de faire ça avec un 'if' mais, évidemment, ça ne fonctionne pas...

Quelqu'un à une idée???

3 réponses

Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
28
Voici un exemple de code qui fonctionne et qui pourra j'espere t'aider :

<%@ Page Language="vb" %>
<script language="vb" runat="server">
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    DropDownList1.Datasource = Split("1,2,3,4",",")
DropDownList1.databind
    DropDownList2.Datasource = Split("a,b,c,d",",")
DropDownList2.databind
end sub

public sub DropChanged(sender As Object, e As System.EventArgs)
DropDownList2.visible = true
end sub
</script>
<html>

<form id="Form1" method="post" runat="server">

</form>

</html>



J'ai pas commenté le code car c'est assez simple, j'espere qu'il repondra à tes attentes

@+

Cyril (Alias Jesusonline)
Messages postés
21
Date d'inscription
jeudi 23 octobre 2003
Statut
Membre
Dernière intervention
30 mars 2004

Merci jesusonline, c'est... Vraiment très complet comme code... Cependant, je ne suis pas aussi fort que toi en ASP et, je me demandais si tu aurais l'amabilité de commenter ton code, ça me rendrais vraiment un fier service!

Merci!
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
28
Si tu veux :)

Dans mon code j'ai supposé que tu travaillais pas en code behind (séparation du code et du HTML) et je viens de relire mais j'ai supposé (à tort) que tu travaillais en asp.net qui n'est pas compatible avec asp simple

Voici le code commenté, j'ai un peu commenté mais je le trouve tres simple et je sais pas quoi commenté :-/ dis moi ce que tu comprend pas plutot

<%@ Page Language="vb" %>
<script language="vb" runat="server">

'Point d'entrée de l'application avec des parametres qui peuvent etre utiles dans certains cas
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
'Je lie des données à mon dropdownlist ca peut se faire autrement
'mais c'est ce qu'il y a de plus simple il suffit juste de mettre un tableau
'en source de donnée et de databinder ces données a ton controle
DropDownList1.Datasource = Split("1,2,3,4",",")
DropDownList1.databind
'idem
DropDownList2.Datasource = Split("a,b,c,d",",")
DropDownList2.databind
end sub

'LA methode appellé qd on change d'index pour le dropdownlist1
public sub DropChanged(sender As Object, e As System.EventArgs)
'Si il change on le met le 2 à visible 
DropDownList2.visible = true
end sub
</script>

<html>

<form id="Form1" method="post" runat="server">
<!-- ton premier dropdownlist avec la valeur autopostback pour que si on change le 2 devient visible ca se fait via la propriété onselectedindexchanged--->

<!---Le N°2---->

</form>

</html>


Ce code comme ca n'as pas beaucoup d'interet, en effet il serait plus agreable de le faire en javascript ce qui eviterais le postback, ce code est utile si l'on change les données de la seconde liste en fonction de la premiere.

Essaye de mettre ce code dans une page aspx et dis moi deja si ca marche

J'espere t'avoir un peu plus aidé, dis moi si tu as des problèmes

Cyril (Alias Jesusonline)

PS: j'ai modifié un brin le code (j'ai enlevé handles ....) n'en tient pas compte j'avais laissé ca car j'ai l'habitude de travailler en code behind, ou la il est necessaire.