Struts 2.1 - Action + DIV

6 respostas
R

Olá,

preciso que a jsp resultante da minha action seja carregada em uma div na minha página atual.

Como fazer isso?

Obs: A action só é chamada após clique em um botão.

6 Respostas

jyoshiriro

Você pode fazer isso usando:

  1. Jquery puro (se você gosta de faças as coisas “na unha”)
  2. Dojo Plugin (não recomendável, muitos bugs e lento)
  3. Jquery plugin (recomendável, pois abstrai o uso do jquery através de taglibs)
    http://code.google.com/p/struts2-jquery/

Um forte abraço.

R

Ok,

consegui fazer utilizando o jquery plugin (sj:a)

até aih tudo bem, ele monta um botão e direciona para a div ao clicar.

Tenho uma estrutura de árvore montada automaticamente através de um ‘framework’, onde ele renderiza um href.

Existe a possibilidade de adaptar a tag do jquery sj:a para que funcione dentro do href desse ‘framework’?

jyoshiriro

Basta identificar o “id” html do elemento gerado por esse framework :wink:

Use o firebug (no Firefox) para descobrir isso.

R

Amigo, obrigado pela ajuda, mas eu axo q não me expressei bem…

eu gostaria q o href do framework, fizesse a funcao do botao gerado pelo sj:a

entao qndo clicasse no elemento da árvore, ele carregaria o conteúdo dentro da div especificada, como se fosse o botão do jquery…

isso é possível?

jyoshiriro

Ah sim, agora entendi ^^’.

Bem, nesse caso, acredito que só o uso de Jquery “puro” resolva seu caso. Mas só vendo como esse framework funciona para ter certeza disso.

R

Eu tentei usar o próprio código de script que o plugin do jquery cria pra definir um href:

link
<a id="ajaxlink">Botao</a>
codigo jquery
<script>
	jQuery(document).ready(
					function() {
						var options_ajaxlink = {};
						options_ajaxlink.jqueryaction = "anchor";
						options_ajaxlink.id = "ajaxlink";
						options_ajaxlink.targets = "result";
						options_ajaxlink.href = "/InterfaceGerenciamento/CarregaDivAction.action";
						options_ajaxlink.hrefparameter = "id=1";

						jQuery.struts2_jquery.bind(jQuery('#ajaxlink'),options_ajaxlink);

					});
</script>

não funcionou dessa forma, alguma ajuda?

Criado 16 de julho de 2010
Ultima resposta 18 de jul. de 2010
Respostas 6
Participantes 2