struts2 + jquery 开发环境下的ajax构建方法(action写法 + struts.xml配置 + js调用代码)
1.action写法
public class RegisterAction extends ActionSupport { private InputStream inputStream; /** * 方法名随意,在struts.xml中配置好就可以 */ public String execute() { String str; // 想要返回的变量
// 赋值,根据需要自行替换代码即可 str = "这是个演示"; try { inputStream = new ByteArrayInputStream(str.getBytes("UTF-8")); } catch (UnsupportedEncodingException e) { e.printStackTrace(); return ERROR; } return SUCCESS; }
public InputStream getInputStream() { return inputStream; } public void setInputStream(InputStream inputStream) { this.inputStream = inputStream; } }
2.struts.xml配置
<action name="validUsername" class="cyberay.org.rayplus.action.RegisterAction" method="valid"> <result name="success" type="stream"> <param name="contentType">text/html</param> <param name="inputName">inputStream</param> </result> </action>
3.js调用
首先需要引入相关的jquery文件,例如
<script type="text/javascript" src="js/jquery.1.8.3.min.js"></script>
然后是具体的调用方法
$.get("validUsername.action",$("#registerForm").serializeArray(), function(data,statusText){ alert(data); }, "html");
附:get方法的具体介绍可以参考如下资料
$(selector).get(url,data,success(response,status,xhr),dataType)
需要注意的是,具体使用这个方法的时候有多种方式,
比如可以直接把他绑定到某个button的onclick方法上
$("button").click(function(){ $.get(); });
也可以把他放到一个别的方法里,然后从别处调用
function valid(){ $.get(); }
或者其他使用方法,随需求自行调用即可。