如何在ajax中调用Struts2 Action方法。现在我工作调用servlet.is有可能吗?如果有的话请分享。
答案 0 :(得分:9)
将 struts.xml
更新为
<package name="prjajax" namespace="/" extends="json-default">
<result-types>
<result-type name="json" class="org.apache.struts2.json.JSONResult" />
</result-types>
<action name="AJAXAction" class="com.demo.sd.prj.ui.actions.AJAXAction" method="myMethod">
<result name="success" type="json" />
</action>
<强> jQuery code:
强>
$.ajax({
url: "AJAXAction",
type: "POST",
data: {data: $('#txtbox').val()},
dataType: "json",
error: function(XMLHttpRequest, textStatus, errorThrown){
alert('Error ' + textStatus);
alert(errorThrown);
alert(XMLHttpRequest.responseText);
},
success: function(data){
alert('SUCCESS');
}
});
答案 1 :(得分:2)
您也可以调用Struts2 Action而不是Servlet。
http://struts.apache.org/2.x/docs/ajax.html
Struts2还支持不同的AJAX框架,如jQuery / Dojo / YUI 使用不同的插件。