2010-05-21 11 views

Odpowiedz

6

Najprostszym rozwiązaniem jest użycie funkcji jQuery .load().

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

Teraz zrozumieć, że należy upewnić się, że odpowiedź z akcji jest strona, która naprawdę nie jest kompletna strona HTML, ponieważ nie można nadziać kompletny dokument HTML wewnątrz <div>. Jeśli masz kompletny dokument, i chcesz tylko jego część (powiedzmy, blok zawarty w <div> z id „usefullStuff”), można to zrobić:

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

Dziękuję. Uratowałeś mój poniedziałek :) – LimetreeValley

1

lub przy 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> 
Powiązane problemy