工作中遇到了太多太多的表单提交问题,曾经学过一个HTML的表单提交给

另外一个HTML页面,对于后台怎么获取有点想不起来了。

今天便做了几个实验,提交订单到后台,来掩饰后台如何接受表单内容;

实验 一:

 <form id="myform" action="/login/abc" method="post">
<p>联系人:<input type="text" name="name" style="width: 300px" /></p>
<p>电话:<input type="text" name="tel" style="width: 300px" /></p>
<p><input type="submit" value="提交" /></p>
</form>

  后台是如何接收的呢;

 @Controller
@RequestMapping(value = "/login")
public class LoginController {
@RequestMapping(value = "/abc")
@ResponseBody
public void login(String name){
System.out.println(name);
System.out.println(tel);
}

  输入:周杰伦

      123456

  点击提交按钮:

  输出:周杰伦

      123456

  没有问题。

实验二:

 <form id="myform" action="/login/abc" method="post">
<p>联系人:<input type="text" name="name" style="width: 300px" /></p>
<p>电话:<input type="text" name="tel" style="width: 300px" /></p>
<p><input type="submit" value="提交" /></p>
</form>

  后台现将name,和tel属性封装成一个类person

 public class Person {

     private String name;
private String tel;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
} }

  后台代码

  

 @Controller
@RequestMapping(value = "/login")
public class LoginController {
@RequestMapping(value = "/abc")
@ResponseBody
public void login(Person person){
System.out.println(person.getName());
System.out.println(person.getTel());
}

  依然成功;

实验三  表单的ajax提交;(重点)

    1.用其他的按钮代替提交按钮。

 <body>
<form id="my" action="/login/abc" method="post">
<p>联系人:<input type="text" name="name" style="width: 300px" /></p>
<p>电话:<input type="text" name="tel" style="width: 300px" /></p>
<p><input type="submit" value="提交" /></p>
</form>
<input type="button" onclick="ck();" value="登录"/>
</body>

  我们在form标签的外面再加一个按钮(登录);实现点击登录按钮也提交。这时候需要在登录按钮添加方法,方法中写上

  $("#my").submit();

 <script th:inline="javascript">
function ck(){ $("#my").submit()
}
</script>

  那么如何实现ajax提交呢。

  

 function ck(){

                 $.ajax({
url:"/login/abc",
type:"post",
dataType:"json",
data:$("#my").serializeArray(),
success:function(person){
console.log(person.name);
}
}) }

重点重点重点:

  data:$("#my").serializeArray(),

  

关于我们经常用到的form表单提交的更多相关文章

  1. Form表单提交数据的几种方式

    一.submit提交 在form标签中添加Action(提交的地址)和method(post),且有一个submit按钮(<input type='submit'>)就可以进行数据的提交, ...

  2. jQuery Form 表单提交插件-----formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的 应用

    一.jQuery Form的其他api  1.  formSerialize 将表单序列化成查询串.这个方法将返回一个形如: name1=value1&name2=value2的字符串.是否可 ...

  3. jQuery Form 表单提交插件----Form 简介,官方文档,官方下载地址

     一.jQuery Form简介 jQuery Form插件是一个优秀的Ajax表单插件,可以非常容易地.无侵入地升级HTML表单以支持Ajax.jQuery Form有两个核心方法 -- ajaxF ...

  4. Checkbox框全选操作,form表单提交与jquery ajax提交两种处理方式

    //1.jquery ajax<script type="text/javascript"> $(function(){ var basePath = $(" ...

  5. form表单提交

    1.form表单提交.html页面失败 <%--客户端form--%> <form id="form2" action="LoginOne.html&q ...

  6. ajax form表单提交 input file中的文件

    ajax form表单提交 input file中的文件 现今的主流浏览器由于ajax提交form表单无法把文件类型数据提交到后台,供后台处理,可是开发中由于某些原因又不得不用ajax提交文件, 为了 ...

  7. 2017-01-11小程序form表单提交

    小程序form表单提交 1.小程序相对于之前的WEB+PHP建站来说,个人理解为只是将web放到了微信端,用小程序固定的格式前前端进行布局.事件触发和数据的输送和读取,服务器端可以用任何后端语言写,但 ...

  8. SpringMVC中使用bean来接收form表单提交的参数时的注意点

    这是前辈们对于SpringMVC接收表单数据记录下来的总结经验: SpringMVC接收页面表单参数 springmvc请求参数获取的几种方法 下面是我自己在使用时发现的,前辈们没有记录的细节和注意点 ...

  9. Form表单提交,Ajax请求,$http请求的区别

    做过前端同学想必都避免不了要和后台server打交道.而以下这三种与后台交互的方式想必大家都不陌生. Form表单提交,Ajax请求,Angular的$http请求 以前一直搞不清楚什么时候应该用哪种 ...

  10. js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题

    js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题 js模拟form表单提交数据源码: /** * js模拟form表单提交 * @param ...

随机推荐

  1. asp.net dataTable转换成Json格式

    /// <summary> /// dataTable转换成Json格式 /// </summary> /// <param name="dt"> ...

  2. C#开发微信门户及应用(14)-在微信菜单中采用重定向获取用户数据

    我曾经在系列文章中的<C#开发微信门户及应用(11)--微信菜单的多种表现方式介绍>中介绍了微信菜单里面的重定向操作,通过这个重定向操作,我们可以获取一个code值,然后获取用户的open ...

  3. c++ vector 使用

    1. 包含一个头文件: 1 #include <vector> 2. 申明及初始化: std::vector<int> first; // empty vector of in ...

  4. PHP 策略模式

    策略模式:定义一系列的算法,把每一个算法封装起来, 并且使它们可相互替换.本模式使得算法可独立于使用它的客户而变化.策略模式把对象本身和运算规则区分开来,其功能非常强大,因为这个设计模式本身的核心思想 ...

  5. 使用visualvm远程监控JVM LINUX服务器配置方法

    (1)首先要修改JDK中JMX服务的配置文件,以获得相应的权限: 进入$JAVA_HOME所在的根目录的/jre/lib/management子目录下, a. 将jmxremote.password. ...

  6. WEB项目会话集群的三种办法

    web集群时session同步的3种方法 在做了web集群后,你肯定会首先考虑session同步问题,因为通过负载均衡后,同一个IP访问同一个页面会被分配到不同的服务器上, 如果session不同步的 ...

  7. datatables中的Options总结(2)

    datatables中的Options总结(2) 五.datatable,列 columnDefs.targets 分配一个或多个列的列定义. columnDefs 设置列定义初始化属性. colum ...

  8. 初识Git

    Git是目前世界上最先进的分布式版本控制系统.在Git诞生之前,我们一直使用的是集中式版本控制系统(如CVS.SVN等),那么两者有什么不同呢?分布式的优势又在哪里呢? 分布式vs集中式 集中式版本控 ...

  9. 【原】Go语言及Web框架Beego环境无脑搭建

    本文涉及软件均以截至到2013年10月12日的最新版本为准 1. 相关软件准备: 1) go1.2rc1.windows-386.msi,对应32位windows系统安装使用 下载地址: https: ...

  10. 【代码笔记】iOS-自定义导航条颜色

    一,效果图. 二,工程图. 三,代码. AppDelegate.m - (BOOL)application:(UIApplication *)application didFinishLaunchin ...