前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个ajax的Post要求

一个ajax的Post要求

作者头像
全栈程序员站长
发布2022-07-06 10:51:37
1.4K0
发布2022-07-06 10:51:37
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是全栈君。

<1>

$.post(url,[data],[callback],[type]) 第一个参数是地址,第二个参数是一个参数传递。第三个参数是一个回调函数。參数是请求返回数据的类型

代码语言:javascript
复制
//一个ajax的Post请求 
    function submitInfo() {
        $(".warn").hide(); //刚提交的时候隐藏错误的信息
        var data = $("#formData").serialize(); //将表单的数据通过序列化表单值,创建 URL 编码文本字符串。形成一个表单元素集合的 jQuery 对象        $.post("/login/checkLoginInfo", data, function (ajaxObj) { //将数据提交到login控制器下的CheckLOginInfo方法。參数是data。  假设请求成功。function就是请求成功时运行的回调函数。ajaxObj是checkLoginInfo方法的返回数据            //回传内容{status: 1(success)/0(fail),}            if (ajaxObj.status == 0 || status == null) { //假设返回状态为0或者为null                 $(".warn").show(); //将错误信息显示出来            } else {                //登陆成功。跳转都制定页面                window.location = '/HotelList/Index';            }        }, "json"); //这里是第四个參数,这里设置了获取数据的类型,所以得到的数据格式为json类型的    }

<2>

注意这条语句的參数。与回调函数 loginFinish 与上面条$.Post()请求的差别

$.post(“/ajax/UserLogin.ashx”, { “username”: username, “password”: password }, loginFinish);

代码语言:javascript
复制
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <link href="/css/ui-lightness/jquery-ui-1.8.2.custom.css" rel="stylesheet" type="text/css" />
    <script src="/js/jquery-1.4.2.js" type="text/javascript"></script>
    <script src="/js/jquery-ui-1.8.2.custom.js" type="text/javascript"></script>
    <script type="text/javascript">
        //向服务器请求当前登录状态。然后切换登录区域的显示
        var checkLogin = function () {
            $.post("/ajax/CheckLogin.ashx", function (data) {
                var strs = data.split("|");
                if (strs[0] == "no") {
                    //alert("木有登陆");
                    $("#divLoginArea").show(); //假设没有登陆就显示"登陆"
                    $("#divLoginOutArea").hide(); //隐藏"注销"
                }
                else {
                    //切换“登录”、“注销”的两个层
                    $("#divLoginArea").hide(); //隐藏"登陆"
                    $("#divLoginOutArea").show(); //显示 "注销"
                    $("#spanUserName").text(strs[1]);//把当前登录username显示出来
                }
            });
        }

        var loginFinish = function (data) {  //这是一个回调函数
            if (data == "ok") {
                //alert("成功");
                $("#divLogin").dialog("close"); //登录成功关闭窗体
                checkLogin();//登录成功。刷新登录区域的显示
            }
            else {
                alert("username密码错误");
            }
        };
        $(function () {
            $("#btnShowLoginDlg").click(function () {
                $("#divLogin").dialog({
                    height: 200,
                    modal: true
                });
            });
            $("#btnLogin").click(function () {  //当用户点击"登陆" 控件触发事件
                //todo:检验username、密码不能为空
                var username = $("#txtUserName").val();
                var password = $("#txtPwd").val();
                $.post("/ajax/UserLogin.ashx",//----------------------请关注这条$.Post()请求的參数与回调函数
                    { "username": username, "password": password },
                    loginFinish);
            });
        });

        $(function () {
            checkLogin();//刚进入页面的时候也是先向服务器查询当前登录状态
            $("#btnLogout").click(function () {
                $.post("/ajax/Logout.ashx", function () {
                    checkLogin();//刷新显示
                });
            });
        });
    </script>
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
代码语言:javascript
复制
<body>
    <form id="form1" runat="server">
    <div>
        <div id="divLoginArea" style="display:none"><input type="button" value="登录" id="btnShowLoginDlg" /></div>
        <div id="divLoginOutArea" style="display:none">
            <span id="spanUserName"></span>
            <input type="button" value="注销" id="btnLogout" />
        </div>
        <div id="divLogin" title="登录窗体"  style="display:none">
            <table>
                <tr><td>username:</td><td><input type="text"  id="txtUserName"/></td></tr>
                <tr><td>密码:</td><td><input type="password"  id="txtPwd"/></td></tr>
                <tr><td colspan="2"><input type="button" value="登录" id="btnLogin" /></td></tr>
            </table>
        </div>
        <br />
        <asp:ContentPlaceHolder ID="placeHolderMain" runat="server">
        
        </asp:ContentPlaceHolder>
        <br />
         尾部<br />
    </div>
    </form>
</body>
</html>

版权声明:本文博客原创文章。博客,未经同意,不得转载。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/117202.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年1月9,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档