Jquery + html:optionsCollection

3 respostas
M

Pessoal, estou usando o jquery + struts 1.x para fazer a atualização de 2 combos dinamicos seleciona um e apresenta os dados filtrados pelo outro… porem no retorno do dados (List) ele gera o select dentro de outro select, abaixo segue o codigo do ajax(jquery) e os codigos JSP e gerados pela pagina apos envio, alguem me dizer o porque desse problema? como posso solucionar ?

Jquery

<script type="text/javascript">
   
      $(document).ready(function(){
        // Evento change no campo tipo  
         $("select[name=unidadeOrcamentariaId]").change(function(){
            // Exibimos no campo marca antes de concluirmos
			$("select[name=unidadeExecutoraId]").html('<option value="">Carregando...</option>');
            // Exibimos no campo marca antes de selecionamos a marca, serve também em caso
			// Passando tipo por parametro para a pagina ajax-marca.php
            $.post("atualizarTelaQuestionarioSaneamentoBasico.do",
                  {unidadeOrcamentariaId:$(this).val()},
                  // Carregamos o resultado acima para o campo marca
				  function(data){
                	  alert("Opa: "+data);
                      $("select[name=unidadeExecutoraId]").load('atualizarTelaQuestionarioSaneamentoBasico.do #unidadeExecutoraId');
                  }
                  )
         })
	  })
      
</script>

JSP:

<p  >Unidade Executora:
 &lt;html:select styleId="unidadeExecutoraId" property="unidadeExecutoraId" styleClass="subtit_campo" &gt;
    &lt;logic:notEmpty  property="listUnidadeExecutora" name="questionarioServicoSaneamentoBasicoForm"&gt;
       &lt;html:optionsCollection property="listUnidadeExecutora"  name="questionarioServicoSaneamentoBasicoForm" label="nomeCompleto" value="entidadeId"  /&gt;
    &lt;/logic:notEmpty&gt;
  &lt;/html:select&gt;
</p>

Codigo gerado apos o retorno:

&lt;select id="unidadeExecutoraId" class="subtit_campo" name="unidadeExecutoraId"&gt;
    &lt;select id="unidadeExecutoraId" class="subtit_campo" name="unidadeExecutoraId"&gt;
    &lt;option value="10490"&gt;SETOR DE ESPORTES&lt;/option&gt;
    &lt;option value="10491"&gt;LAZER E CELTRA&lt;/option&gt;
     &lt;option value="10492"&gt;BIBLIOTECA&lt;/option&gt;
    &lt;option value="40190"&gt;DEPARTAMENTO DE CULTURA E TURISMO&lt;/option&gt;
    &lt;/select&gt;
&lt;/select&gt;
</p>

Abs

3 Respostas

fbl.lucas

tenta isso:

$("select[name=unidadeExecutoraId]").load('atualizarTelaQuestionarioSaneamentoBasico.do #unidadeExecutoraId > :option');
A

Locas, não funcionou.

Ele exibe o erro no debug:

Erro: Syntax error, unrecognized expression: option
Arquivo-fonte: http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
Linha: 3

Att,
Mauricio

M

Locas, fiz uma pequena alteração no seu codigo que solucionou o problema:

$("select[name=unidadeExecutoraId]").load('atualizarTelaQuestionarioSaneamentoBasico.do #unidadeExecutoraId option');

Obrigado
Mauricio

Criado 22 de fevereiro de 2012
Ultima resposta 23 de fev. de 2012
Respostas 3
Participantes 3