通过ajax把form表单里的数据提交到服务器非常简单,把form序列化下就可以了。
jquery中与平时唯一的不同就是把data这样serialize()
<script type="text/javascript">
function test(){
$.post("<%=basePath%>/HelloWorld.action",
$("#form1").serialize(),
function(data,status){
alert("数据:" + data + "\n状态:" + status);
});
}
</script>
<form id="form1" method="post">
First name: <input type="text" name="firstName" value="Bill" /><br />
user.username <input type="text" name="user.username" value="userName"/><br />
user.name.showName <input type="text" name="user.name.showName" value="nameShow"/><br/>
</form>
<input type="button" name="b" value="测试Ajax" onclick=test()>
public void ajax() throws IOException{
PrintWriter out= ServletActionContext.getResponse().getWriter();
out.println("OK");
System.out.println(user.getUsername());
System.out.println(user.getName().getShowName());
System.out.println("................");
}
对,你没有看错,我用的struts框架做的测试。。form表单中要提交的数据必须有name属性,可以说跟平时的一样。