Jquery:ajax或post方式提交form表单

服务器代码

@Controller
@RequestMapping("/jwt")
public class JWTController {
    @RequestMapping("/login")
    @ResponseBody
    public Result<String> login(String username, String password) {
        if (username == null || password == null) {
            return new Result<String>(789, "用户名或密码不正确", null);
        }
        User user = new User(1001, username, password);
        return new Result<>(200, "请求成功!", JSON.toJSONString(user));
    }
}

ajax方式

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>登录页面</title>
        <script src="js/jquery3.3.1.js" type="text/javascript"></script>
        <form id="loginForm">
            <input type="text" name="username" value="zhangsan"><br>
            <input type="password" name="password" value="123456">
            <button id="btn">登录</button>
        </form>
    </head>
    <body>
        <script>
            $(function () {
                $("#btn").click(function () {
                    $.ajax({
                        type:"post",
                        dataType:"json", //预期服务器端返回的数据的类型
                        url:"jwt2/login",
                        data:$("#loginForm").serialize(),
                        success:function (data) {
                            console.info(data);
                        }
                    });
                });
            });
        </script>
    </body>
</html>

post方式

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>登录页面</title>
        <script src="js/jquery3.5.1.js" type="text/javascript"></script>
    </head>
    <body>
        <form id="loginForm">
            <input type="text" name="username" value="zhangsan"><br>
            <input type="password" name="password" value="123456">
        </form>
        <button id="btn">登录</button>
        <script>
            $(function () {
                let obj = {};

                function getObj(str) {
                    let arr = str.split('&');
                    arr.map(function (item) {
                        let tempArr = item.split('=');
                        obj[tempArr[0]] = tempArr[1];
                    });
                    console.log(obj);
                    return obj;
                }
                $("#btn").click(function () {
                    let p = $("#loginForm").serialize();
                    let params = getObj(p);
                    $.post(
                        "jwt/login",
                        params,
                        function (result) { //请求成功
                            console.log(result);
                            if (result.code == 200) {
                                //获取令牌并保存到本地
                                localStorage.setItem("token", '{"token":"' + result.data + '"}');
                            }
                            if (result.code == 789) {
                                window.location = "login";
                            }
                        }, "JSON");
                });
            });
        </script>
    </body>
</html>
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梁云亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值