Pessoal fiz uma solução , mas acho que da para melhorar , mas preciso de vocês.
então tenho dois campos selects :
<div class="span3">
<label for="area">Área:</label>
<select name="area" id="area">
.....
</select>
<label for="amostra">Amostra:</label>
<select name="amostra" id="amostra" disabled="true"> </select>
</div>
Criei um javascript
$('.area').change(function () {
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
url: "http://localhost:8084/Projeto/buscaAmostrasDaArea?idArea="+this.value, -- esse caminho teria outra forma de colocar ?
dataType: "json",
success: function (data) {
var appenddata = '<option>Selecione a amostra</option>';
$.each(data, function (key, value) {
appenddata += "<option value=\"" + value.codigo + "\">" + value.descricao + " </option>";
});
document.getElementById("amostra").disabled = false;
$('#amostra').html(appenddata);
}
});
});
e uma função que retorna as amostras da area no controller
@Get("/buscaAmostrasDaArea")
public void buscaAmostrasDaArea(Long idArea){
AmostraDao amostraDao = DaoFactory.amostraDaoInstance();
List<AmostraEntity> amostras = amostraDao.findByIdArea(idArea);
result.use(Results.json()).withoutRoot().from(amostras).serialize();
}