jQuery AJAX 响应拆分

标签 jquery ajax django

我编写了一个ajax调用来调用API来发布数据并在成功响应后获取并将其显示在我各自表单的div标签中,但它给了我完整的json {"code":200,"status ":"OK","msg":"登录成功"},但我只想显示'msg'部分。我怎样才能做到这一点?我正在 django 模板上执行此操作。

我尝试做res['msg'](python key,value stuff),但它不起作用

<script>
$(document).ready(function(){
    var myForm = $('.my-login-form')
    myForm.submit(function(e){
        e.preventDefault()
        console.log('hi')
        var formData = $(this).serialize()

        $.ajax({
            method: "POST",
            url: '/login',
            data: formData,

            success: function(res) {
                      $('#login-data').html(res);
                    },
        })

    })

})
</script>


                      <form class="my-login-form" action="/login" method="post">
                          {% csrf_token %}
                        <div id="login-data"></div>

                        <div class="field-wrap">
                        <input type="email" name="login-email" required autocomplete="off" placeholder="Email Id"/>
                      </div>
                        <div class="field-wrap">
                        <input type="password" name="login-password" required autocomplete="off" placeholder="Password">
                      </div>
                          <button class="button button-block"/>Login</button>
                        <div class="forgot"><a class="user-form-toggle" href="#forgot">Forgot Password?</a></div>
                      </form>

最佳答案

解决方案如下:

<script>
$(document).ready(function(){
    var myForm = $('.my-login-form')
    myForm.submit(function(e){
        e.preventDefault()
        console.log('hi')
        var formData = $(this).serialize()

        $.ajax({
            method: "POST",
            url: '/login',
            data: formData,

            success: function(res) {
                      var rd = $.parseJSON(res);
                      $('#login-data').html(rd.msg);
                    },
        })

    })

})
</script>

希望它对你有用

关于jQuery AJAX 响应拆分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52307786/

相关文章:

javascript - 根据选择选项修改元素

javascript - JQuery:在链接之前执行帖子

php - 使用 jQuery AJAX 发送多个数据参数

python - 如何使用 Django AutoField 编辑 modelForm?

django - 另一个虚拟机上 Gunicorn 的 Nginx conf?

javascript - 使用 Javascript/jQuery 创建简单的 donut chart

jquery - angularjs数据表无法重新初始化表错误

javascript - 我怎样才能知道哪个元素从js触发了事件?

javascript - 在 1 个 http 请求中解决多个 Promise

python - Django 在 Linux 中找不到我的模型,但在 Windows 中可以