javascript - 如何将数据从 javascript 函数发送到 Django View

标签 javascript python html django

我正在尝试从 JavaScript 函数发送数据,该函数在页面加载到 Django View 时生成随机字符串。我不知道如何构造脚本标记以在页面加载后发送数据以及如何构造views.py 来接收数据。我是 javascript 新手,不太知道如何解决这个问题。我感谢您提供的任何帮助。

index.html

<script>

    function makeid(length) {
        var result           = '';
        var characters       = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
        var charactersLength = characters.length;
        for ( var i = 0; i < length; i++ ) {
            result += characters.charAt(Math.floor(Math.random() * charactersLength));
        }
        return result;
    }
    console.log(makeid(9));

</script>

最佳答案

您可以使用ajax将数据发送到Django View ,如下代码所示。

JavaScript:

function makeid(length) {
    var result           = '';
    var characters       = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
    var charactersLength = characters.length;
    for ( var i = 0; i < length; i++ ) {
        result += characters.charAt(Math.floor(Math.random() * charactersLength));
    }
    $.ajax({
        type: "GET",
        url: '/my_def_in_view',
        data: {
            "result": result,
        },
        dataType: "json",
        success: function (data) {
            // any process in data
            alert("successfull")
        },
        failure: function () {
            alert("failure");
        }
    });
}

url.py:

urlpatterns = [
               url(r'^my_def_in_view$', views.my_def_in_view, name='my_def_in_view'),
               ...
]

views.py:

def my_def_in_view(request):
    result = request.GET.get('result', None)
    # Any process that you want
    data = {
            # Data that you want to send to javascript function
    }
    return JsonResponse(data)

如果成功,它将返回“成功”部分。

关于javascript - 如何将数据从 javascript 函数发送到 Django View,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60653841/

相关文章:

c# - 如何在url中将特殊字符作为查询字符串传递

python - 在 Django 中有一个 SingletonModel 怎么样?

css - HTML5 + CSS : DIV floating left and right

c# - jquery 无法从 C# var 获取变量值

javascript - 如何使用运行时创建的对象渲染数据表单元格

javascript - NodeJS 流和请求模块

javascript - 当我在 Django 中运行我的服务器时,我收到此请求错误,我一直在使用 Bootstrap

python - Heroku 应用程序可以使用不同/多个端口吗?

html - 不要使用 CSS 缩进第一段的第一行

css - 将两个 Div 并排放置在侧边栏中