我正在开发一个简单的游戏,用户可以在模板中选择许多数字,然后将它们传递给视图。
<div class="col-lg-2">
<div class="card text-center bg-gradient-primary border-0 hover-shadow-lg hover-translate-y-n3 mb-4 ml-lg-0">
<div class="card-body">
<div class="d-inline-flex align-items-start">
<div class="pl-0">
<span class="d-block h2 text-white mr-2 mb-1"><b>1</b></span>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-2">
<div class="card text-center bg-gradient-primary border-0 hover-shadow-lg hover-translate-y-n3 mb-4 ml-lg-0">
<div class="card-body">
<div class="d-inline-flex align-items-start">
<div class="pl-0">
<span class="d-block h2 text-white mr-2 mb-1"><b>2</b></span>
</div>
</div>
</div>
</div>
</div>
现在用户选择字段9、13、16、19、22。我想在单击“选择号码”按钮后立即传递所有值。不刷新页面(直到单击按钮)。我怎样才能做到这一点?我当时正在考虑使用隐藏字段<input type="hidden" name="number1" value="1">
,但每次我的模板都会刷新。
一种选择是使用get方法传递值,为每个卡元素href=?button_number_1=1
设置类似的值,然后使用request.GET['button_number_1']
在视图中获取它们。然后使用方法发布将所有内容保存起来。但是也许还有另一种方法呢?任何帮助将不胜感激。
如果我的问题没有得到很好的理解。我将尽力澄清它们。抱歉,但是英语不是我的主要语言。
urls.py
path(r'ajax/your_function_name/', your_function_name, name='your_function_name'),
html file
# You need to use ajax call
$('.text-white').on('click', function () {
$.ajax({
type : "POST",
url: '/ajax/your_function_name/',
data : $(".text-white").text(),
success: function (data) {
# after success function return value, perform your action
}
});
});
views.py
def your_function_name(request):
print(request.data)
pass