【问题标题】:Receive response from AJAX POST request接收来自 AJAX POST 请求的响应
【发布时间】:2019-01-12 22:04:14
【问题描述】:

如何从我的 AJAX POST 请求中接收对 URL 的响应?

这是我的代码:

<script>
    var form = document.getElementById('login-form');
    form.onsubmit = function (e) {
        e.preventDefault();
        var user = form.email.value;
        var pass = form.pass.value;
        console.log(user);
        console.log(pass);
        $.ajax({
            type: "POST",
            url: "http://localhost:5000/auth/login",
            data: {
                username: user,
                password: pass
            },
            success: function(result) {
                alert('msg');
            },
            error: function(result) {
                alert('msg');
            }
        });
        form.reset();
    };
</script>

当用户提交表单时,我得到用户名和密码,该表单向 URL 发送 POST 请求。

如果 POST 请求成功(即,如果服务器收到请求),它将发送带有“登录成功”消息的 JSON。

我什至无法显示此响应消息,因为在我提交表单后没有显示任何内容。

【问题讨论】:

  • 你怎么知道donefailalways是你传入的那个AJAX对象的有效属性? api.jquery.com/jQuery.ajax
  • 你说得对,我现在已经改成成功了。它正在工作。
  • 是的,.done() 用于在通话结束时进行链接 - $.ajax({ ... }).done(function (...) { ... });(没有固定链接,但使用上面查理的链接并向下滚动 5/8 页面)
  • 我现在看到了,谢谢你的帮助!

标签: javascript ajax post request response


【解决方案1】:

尝试将成功添加到您的 ajax 请求。

success: function (msg) {
  console.log(msg)
}

【讨论】:

    【解决方案2】:

    在提醒响应之前使用 JSON.parse(msg),因为 Ajax 响应是一个 json

    done: function (msg) {
               alert(JSON.parse(msg))
            },
            fail: function (msg) {
                  alert(JSON.parse(msg))
            },
            always: function(msg) {
                  alert(JSON.parse(msg))
            }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-14
      • 1970-01-01
      • 1970-01-01
      • 2020-08-04
      • 2012-04-24
      • 1970-01-01
      相关资源
      最近更新 更多