2010-05-21 17 views

risposta

6

La cosa più semplice da fare è utilizzare la funzione jQuery .load().

$('#targetDivId').load('${your.struts.url}', function() { 
    // stuff to do when the div has been reloaded 
}); 

Ora capire che si dovrebbe fare in modo che la risposta da parte vostra azione è una pagina che non è davvero una pagina HTML completo, perché non si può roba un documento HTML completo all'interno di un <div>. Se si dispone di un documento completo, e si desidera solo una parte di esso (ad esempio, un blocco di contenuto in una <div> con id "usefullStuff"), si può fare questo:

$('#targetDivId').load('${your.struts.url} #usefullStuff', function() { 
    // code 
}); 
+0

Grazie. Hai salvato il mio lunedì :) – LimetreeValley

1

O con Struts2 jQuery Plugin:

<%@ taglib prefix="s" uri="/struts-tags"%> 
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%> 
<html> 
    <head> 
    <sj:head/> 
    </head> 
    <body> 
    <div id="div1">Div 1</div> 
    <s:url id="ajaxTest" value="/AjaxTest.action"/> 

    <sj:a id="link1" href="%{ajaxTest}" targets="div1"> 
     Update Content 
    </sj:a> 
    </body> 
</html> 
Problemi correlati