2012-02-24 3 views
6

Devo compilare un elenco a discesa (HTML <select></select>) con caselle di controllo. Ho provato a visualizzare un elenco di questo tipo utilizzando un tag <div></div> e applicando alcuni stili nella pagina JSP ma visualizza un elenco come una casella di riepilogo. Di seguito è riportato il codice nella pagina JSP insieme a Javascript che avvisa solo l'elenco di lingue che sono state selezionate quando si fa clic sull'unico pulsante sulla pagina.Come visualizzare le checkbox nel menu a discesa HTML?

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 

<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <title>Check box list</title> 
</head> 

<script type="text/javascript" language="javascript"> 
    function selectCheckBox() 
    { 
     var total=""; 
     for(var i=0; i < document.form.languages.length; i++) 
     { 
      if(document.form.languages[i].checked) 
      { 
       total +=document.form.languages[i].value + "\n"; 
      } 
     } 
     if(total=="") 
     { 
      alert("select checkboxes"); 
     } 
     else 
     { 
      alert("Selected Values are : \n"+total); 
     } 
    } 
</script> 

<body> 
    <form id="form" name="form" method="post" action="CheckBox.jsp"> 
     <div style="overflow: auto; width: 100px; height: 80px; border: 1px solid #336699; padding-left: 5px"> 
      <input type="checkbox" name="languages" value="English"> English<br> 
      <input type="checkbox" name="languages" value="Hindi"> Hindi<br> 
      <input type="checkbox" name="languages" value="Italian"> Italian<br> 
      <input type="checkbox" name="languages" value="Chinese"> Chinese<br> 
      <input type="checkbox" name="languages" value="Japanese"> Japanese<br> 
      <input type="checkbox" name="languages" value="German"> German<br> 
     </div> 

     <br/><input type="button" name="goto" onClick="selectCheckBox()"value="Check"> 
    </form> 
</body> 

E 'appena viene visualizzato un elenco delle lingue, come mostrato nella seguente snap shot.

enter image description here

Che cosa ho bisogno è quello di mostrare l'elenco delle lingue come un menu a discesa (non come una casella di riepilogo). Come posso fare questo?

+6

Come, http://code.google.com/p/dropdown-check-list/? – Joe

+0

@JoeTuskan Dovresti davvero postare questo come risposta. Bhavesh, quello che Joe sta dicendo con il suo commento è che il semplice vecchio HTML non può farlo ... devi impiegare qualche magica JavaScript ... e alcune brave persone hanno già fatto la maggior parte del lavoro e lo hanno condiviso con il mondo in il collegamento fornito da Joe. –

risposta

15
+3

Buona cattura, sfortunatamente: "DDCL V1.4 NON è compatibile con jQuery 1.8" – Sebastian

+0

@Sebastian Funziona bene con 'jquery/1.10.2' e' jqueryui/1.10.3'. http://jsbin.com/OrEqUfI/2/edit?html,output –