如何在同一模板或其他地方使用 Ajax 成功数据?

Posted

技术标签:

【中文标题】如何在同一模板或其他地方使用 Ajax 成功数据?【英文标题】:How can i use Ajax success data in same template or somewhere else? 【发布时间】:2016-10-29 00:08:11 【问题描述】:
    $.ajax(
        type: "POST",
        url: "% url 'my_url' %",
        async: false,
        data: formData,
        cache: false,
        contentType: false,
        processData: false,
        success: function(data) 
            console.log(data)
            name = data.name
        error: function(e) 
            alert(e.message);
        
    );

这里我想在模板中使用这个名称变量(在 Django 模板中)。如何直接使用? 我可以像这样使用的方法

<html>
% if myname = = name %
<input type="text" value="name" disable</input>
%endif%
</html>

这里的 name 是一个来自 ajax 成功的 django 视图的变量。

【问题讨论】:

不清楚你问的是什么:AJAX是客户端逻辑,但是客户端没有模板…… 【参考方案1】:

像这样使用你的 ajax 响应

$.ajax(
            type: "POST",
            url: "% url 'my_url' %",
            async: false,
            data: formData,
            cache: false,
            contentType: false,
            processData: false,
            success: function(data) 
                console.log(data)
                name = data.name
            $("#anyID").val(name); // like you can populate the values using id or class
            error: function(e) 
                alert(e.message);
            
        );

【讨论】:

如何在条件下访问名称?在这里我只能填充,但有什么方法可以在条件中使用名称(在模板中)即 % if name = =name % 嗨,我处于条件中%endif%)跨度>

以上是关于如何在同一模板或其他地方使用 Ajax 成功数据?的主要内容,如果未能解决你的问题,请参考以下文章

jquery ajax请求成功,但是进入了success,但是返回的数据data为空

Django 使用来自 Ajax 的成功数据更新模板 div

js刷新当前页面

Django - 在同一个模板(ajax 和表单)中处理多个 CSRF 令牌禁止(CSRF 令牌丢失或不正确。)

Ajax请求如何保持同一会话session

parseJSON在django模板的ajax成功回调函数中返回null