Pessoal, estou usando o jquery + struts 1.x para fazer a atualizar algumas tabelas apos o retorno do load porem ultilizando a atualização normal do jquery ele chama Action mais de uma vez ultilizando o codigo dessa maneira:
js_1
<script type="text/javascript">
$(document).ready(function(){
$("#bt_incluir").click(function(){
$.post("incluirNoBanco.do",
{form.serialize() },
function(data){
$("div#dtabela").load('incluirNoBanco.do #dtabela');
$("div#erro").load('incluirNoBanco.do #erro');
$("div#msg").load('incluirNoBanco.do #msg');
})
})
</script>
JSP
<html>
<body>
<div id="#erro">
[aqui vem bean erro]
</div>
<div id="#msg">
[aqui vem um bean msg]
</div>
<form>
<div id="dtabela">
[aqui vem um diplay tabel]
</div>
</form>
</body>
</html>
Dessa maneira ele funciona porem ele chama o .do 3 vezes isso não pode acontecer… dando uma lida no jquery vi que podemos fazer assim que tbm funciona:
js_2
<script type="text/javascript">
$(document).ready(function(){
$("#bt_incluir").click(function(){
$.post("incluirNoBanco.do",
{form.serialize() },
function(data){
$("div#dtabela").load('incluirNoBanco.do #dtabela, #erro, #msg ');
})
})
</script>
porem ele monta o html errado colocando as menssagens e menssagens de erro dentro da div da tabela (“dtabela”), como deve proceder para atualizar essas tres divs sem chamar a action 3x e manter a estrutura normal do HTML?