Ciao, il tuo codice non è troppo corretto anche se il comportamento di per sè è giusto.
Il label infatti ha una funzione "toggle", cioè "alterna" la selezione del controllo a cui è associato.
Ora, è possibile associare il label ad un controllo usando l'attributo "for" oppure includendo il controllo stesso dentro l'elemento label.
Praticamente tu hai quest'ultima situazione, infatti cliccando qualsiasi cosa che stà dentro il tag label avviene la funzione toggle, che però viene attribuita al primo elemento (il quale probabilmente viene considerato come elemento associato a quel label).
In sostanza una situazione del genere è corretta:
codice:
<label>nome:
<input name="nome" type="text" />
</label>
mentre questo è meno corretto:
codice:
<label>lavoro: <br />
<input name="lavoro" type="checkbox" value="lavoro1" />Lavoro1 <br />
<input name="lavoro" type="checkbox" value="lavoro2" />Lavoro2 <br />
<input name="lavoro" type="checkbox" value="lavoro3" />Lavoro3 <br />
<input name="lavoro" type="checkbox" value="lavoro4" />Lavoro4 <br />
<input name="lavoro" type="checkbox" value="lavoro5" />Lavoro5 <br />
<input name="lavoro" type="checkbox" value="lavoro6" />Lavoro6 <br />
</label>
Non ha senso (e non è corretto) usare un label per un gruppo di più elementi.
Dovresti piuttosto avere un label per ogni elemento input, del tipo:
codice:
lavoro:<br>
<label><input name="lavoro" type="checkbox" value="lavoro1" />Lavoro1</label><br>
<label><input name="lavoro" type="checkbox" value="lavoro2" />Lavoro2</label><br>
O nel caso usare l'attributo "for".
Mentre se vuoi applicare un'etichetta che racchiuda graficamente un gruppo di elementi, puoi usare <fieldset> e <legend> in questo modo:
codice:
<form name="form_ins" method="post" action="">
<fieldset>
<legend>Lavoro:</legend>
<label><input name="lavoro" type="checkbox" value="lavoro1" />Lavoro1</label><br>
<label><input name="lavoro" type="checkbox" value="lavoro2" />Lavoro2</label><br>
</fieldset>
</form>