zoukankan      html  css  js  c++  java
  • 关于我们经常用到的form表单提交

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

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

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

    实验 一:

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

      后台是如何接收的呢;

    1 @Controller
    2 @RequestMapping(value = "/login")
    3 public class LoginController {
    4     @RequestMapping(value = "/abc")
    5     @ResponseBody
    6     public void login(String name){
    7         System.out.println(name);
    8                 System.out.println(tel);
    9     }

      输入:周杰伦

          123456

      点击提交按钮:

      输出:周杰伦

          123456

      没有问题。

    实验二:

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

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

     1 public class Person {
     2     
     3     private String name;
     4     private String tel;
     5     public String getName() {
     6         return name;
     7     }
     8     public void setName(String name) {
     9         this.name = name;
    10     }
    11     public String getTel() {
    12         return tel;
    13     }
    14     public void setTel(String tel) {
    15         this.tel = tel;
    16     }
    17     
    18 }

      后台代码

      

    1 @Controller
    2 @RequestMapping(value = "/login")
    3 public class LoginController {
    4     @RequestMapping(value = "/abc")
    5     @ResponseBody
    6     public void login(Person person){
    7         System.out.println(person.getName());
    8         System.out.println(person.getTel());
    9     }

      依然成功;

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

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

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

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

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

    1 <script th:inline="javascript">
    2         function ck(){
    3             
    4             $("#my").submit()
    5         }
    6 </script>

      那么如何实现ajax提交呢。

      

     1 function ck(){
     2             
     3             
     4                 $.ajax({
     5                     url:"/login/abc",
     6                     type:"post",
     7                     dataType:"json",
     8                     data:$("#my").serializeArray(),
     9                     success:function(person){
    10                         console.log(person.name);
    11                     }
    12                 })
    13             
    14             
    15         }

    重点重点重点:

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

      

  • 相关阅读:
    关于前端框架讨论的链接
    和BEM的战斗:10个常见问题及如何避免
    BEM —— 源自Yandex的CSS 命名方法论
    JavaScript 语句后应该加分号么?
    彻底搞懂word-break、word-wrap、white-space
    ios UIImageWriteToSavedPhotosAlbum报错 NSPhotoLibraryAddUsageDescription
    Emmet使用手册
    vue-cli入门之项目结构分析
    ios移动端原生滚动条滚动不灵敏问题
    ios点击事件失效
  • 原文地址:https://www.cnblogs.com/fengchaoLove/p/5880538.html
Copyright © 2011-2022 走看看