一、ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单。通过在后台与服务器进行少量数据交换,ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统普通的网页(不使用ajax)如果需要更新内容,必须重载整个网页页面。

二、通过ajax提交form实现的登录实例:

<body>
<h1 align="center">用户登录</h1>
<div align="center" style="font-size: 20px;">
<form id="loginForm" name="loginForm" action="${pageContext.request.contextPath}/user/login" method="post">
<table align="center">
<tr>
<td>用户名:</td>
<td colspan="2"><input type="text" name="username" id="username" /></td>
</tr>
<tr>
<td>密  码:</td>
<td colspan="2"><input type="password" name="password" id="password" /></td>
</tr>
<td colspan="3" align="center">
<input id="login_submit_button" type="button" value="登录" onclick=<span style="color:#ff00;">"loginSubmit</span>(this.form);" />
</td>
</tr>
</table>
</form>
</div>
<div align="center" style="padding:30px;font-size: 15px;">
<span style="color: red;">注意:</span>
<span style="color: blue;">
只有登录用户才可以上传图片。
</span>
</div>
</body>

  

<head>
<title>用户登录</title>
<script src="${pageContext.request.contextPath}/js/jquery-1.4.min.js" type="text/javascript"></script>
</head>
<script type="text/javascript">
function loginSubmit(form) {
$.ajax( {
type : "POST",
url : "${pageContext.request.contextPath}/user/login",
data : $("#loginForm")<span style="color:#ff00;">.serialize</span>(),
success : function(msg) {
if ((msg == "true")) {
alert("登录成功。");
window.location.href = "${pageContext.request.contextPath}/add_user";
} else {
if(msg=="false"){
alert("登录失败。");
}
}
}
}); }
</script>

  三、部分ajax提交form表单实例:

$.ajax({
cache: true,
type: "POST",
url:ajaxCallUrl,
data:$('#yourformid').serialize(),// 你的formid
async: false,
error: function(request) {
alert("Connection error");
},
success: function(data) {
$("#commonLayout_appcreshi").parent().html(data);
}
});

  四、ajax提交表单可以分为两种,一种是无返回结果的,就是将表单数据提交给后台,后台处理完就完了;另一种就是有返回结果的,后台执行成功或失败的信息需要返回到前台。

1,无返回结果的
   最简单的就是$("#formid").submit();直接将form表单提交到后台。

2,有返回结果的
   这种方式是使用最多的一种,因为程序的执行成功与否都需要给用户提示,程序一般也都是多步完成的,执行完插入操作,需要发起流程,这就需要在界面上判断成功与否。
   ajax本身属于有返回结果的一类,其中的success方法就是处理后台返回结果的。
   ajax提交表单有返回结果的有两种实现方式:

1)将form表单数据序列化

<span style="font-size:18px;">  $.ajax({
type: "POST",
url:your-url,
data:$('#yourformid').serialize(),
async: false,
error: function(request) {
alert("Connection error");
},
success: function(data) {
//接收后台返回的结果
}
});</span>

  这种方式需要注意的是form表单中的项一定要有name属性,后台获取的键值对为key=name值,value=各项值,注意无论是input标签还是span或者是其他标签,一定要有name属性,没有name属性后台是获取不到该项的

2)通过窗口查找form提交

<span style="font-size:18px;">  // 提交表单
var obj = document.getElementById("xx_iframe").contentWindow;
obj.$("#yourform").form("submit",{
success :function(data){
//对结果处理
} });</span>

  

最新文章

  1. Lua中的常用函数库汇总
  2. ajax中文传送到模板显示为null
  3. UIkit框架之UItableview
  4. JS开发者常用的10个Sublime Text插件
  5. TableViewCell自定义分割线
  6. java实现附件预览(openoffice+swftools+flexpaper)
  7. 如何在linux console中显示当前你在的branch?
  8. Java练习之最大相同子串
  9. C如何使用内存
  10. 关于offset()的理解
  11. Java项目中使用配置文件配置
  12. tcp/ip通信传输流
  13. setTimeout,setInterval你不知道的事
  14. 消息中间件系列一:入门、JMS规范、ActiveMQ使用
  15. jmeter之使用代理录制脚本
  16. 对仿真glbl.v文件的理解
  17. Windows git 初始设置
  18. jstack实战死循环与死锁学习笔记
  19. Exploring the world of Android :: Part 1
  20. Freemarker操作字符串

热门文章

  1. 了解 JS 原型
  2. k8s总结(图片打开略慢请知晓)
  3. Android Studio 工具插件
  4. 红米3 SudaMod(android_6.01_r72)高配指纹/农历/归属地/SM天气/流畅运行/红外线正常/更新于20161025
  5. bzoj 3262 陌上花开
  6. css-css权威指南学习笔记5
  7. 【整理】认识MSG结构体
  8. &lt;&lt;&lt; sqlserver、Mysql、Oracle数据库优缺点
  9. WebStorage的使用
  10. AE套宗获取内环