2010-11-09 4 views
0

J'ai 3 contrôles webforms: 3 cases à cocher et 1 zone de texte.mettre du texte dans une zone de texte lorsque 2 cases à cocher sont cochées

Lorsque je coche checkbox1 et checkbox2, alors dans la zone de texte, il doit apparaître 1,2. Comment cela peut-il être fait en utilisant les contrôles de formulaires Web ASP.NET?

+2

Dupliquer des questions par le même utilisateur: http://stackoverflow.com/questions/4091208/checkbox-selected-values-in-comma-sepearted-string-in-textbox-using-vb-net, http: // stackoverflow.com/questions/4130800/insert-checkbox-checked-value-when-checked-to-textbox-as-comma-seperated-string, et http://stackoverflow.com/questions/4127492/vb-net-add -checkbox-checked-values-to-textbox-closed - en plus de beaucoup, beaucoup d'autres. – jwiscarson

Répondre

0

Le moyen le plus simple serait d'utiliser JavaScript pour modifier le contenu de la zone de texte.

<script language="javascript"> 
    var c1 = document.getElementById('<%=myCheckBox1.ClientID%>'); 
    var c2 = document.getElementById('<%=myCheckBox2.ClientID%>'); 
    var c3 = document.getElementById('<%=myCheckBox3.ClientID%>'); 
    var t = document.getElementById('<%=myTextBox.ClientID%>'); 

    function setTextBox() 
    { 
     if(c1.checked) t.value = "1"; 
     if(c2.checked) t.length > 0 ? ",2" : "2"; 
     if(c3.checked) t.length > 0 ? ",3" : "3"; 
    } 
</script> 

Ensuite, pour vos cases à cocher ajouter l'extrait suivant:

onClientClick="setTextBox()" 

EDIT: Si vous choisissez d'utiliser jquery, une partie de ce code peut probablement être réduit/simplifié. Si vous avez besoin de rendre la logique de ce qui s'affiche un peu plus compliqué (comme changer la valeur de la zone de texte lorsque 1 et 2 sont cliqués mais que 3 ne l'est pas, etc.) cela peut être accompli avec JavaScript dans setTextBox().

+0

okey dites-moi .... jquery ... code ... mais je veux utiliser les contrôles standard asp.net (case à cocher et textbox) pas html – user515609

+0

@ user495854 - ce script utilise les contrôles standards asp.net. Cela ne nécessite pas de publication pour effectuer le changement. Les réponses mises en avant dans votre autre question identique plus que de répondre à la méthode de postback simple. –

Questions connexes