 //complex example, note how we need to pass in different CSS selectors because of the complex HTML structure  
 var select_multiple_two = new Control.SelectMultiple('id_zone','select_multiple_two_options',{  
     checkboxSelector: 'table.select_multiple_table tr td input[type=checkbox]',  
     nameSelector: 'table.select_multiple_table tr td.select_multiple_name',  
     afterChange: function(){  
         if(select_multiple_two && select_multiple_two.setSelectedRows)  
             select_multiple_two.setSelectedRows();  
     }  
 });  
 
 if(typeof(zone) !== 'undefined')  {
 	select_multiple_two.setValue(zone);
 }
 //adds and removes highlighting from table rows  
 select_multiple_two.setSelectedRows = function(){  
     this.checkboxes.each(function(checkbox){  
         var tr = $(checkbox.parentNode.parentNode);  
         tr.removeClassName('selected');  
         if(checkbox.checked)  
             tr.addClassName('selected');  
     });  
 }.bind(select_multiple_two);  
 select_multiple_two.checkboxes.each(function(checkbox){  
     $(checkbox).observe('click',select_multiple_two.setSelectedRows);  
 });  
 select_multiple_two.setSelectedRows();  
   
 //link open and closing  
 $('select_multiple_two_open').observe('click',function(event){  
     $(this.select).style.visibility = 'hidden';  
     new Effect.BlindDown(this.container,{  
         duration: 0.3  
     });  
     Event.stop(event);  
     return false;  
 }.bindAsEventListener(select_multiple_two));  
 $('select_multiple_two_close').observe('click',function(event){  
     $(this.select).style.visibility = 'visible';  
     new Effect.BlindUp(this.container,{  
         duration: 0.3  
     });  
     Event.stop(event);  
     return false;  
 }.bindAsEventListener(select_multiple_two));
	
