我正在尝试从 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/