编辑下面的工作,但即使我的ajax看起来是正确的,我的导航条没有更新的结果的ajax请求
urls.py
app_name='randomization'
urlpatterns = [
...
path('stock/', views.stock, name='stock'),
]views.py
def stock(request):
if request.method == "POST":
site = request.POST['site']
else:
site = ''
# database queries to be done after
# result will be stock == True or stock == False
return render(request, 'randomization/stock.html', {'stock': True})ajax代码
$("#site").on("change", function(event){
console.log($(this).val());
$.ajax({
type: "POST",
url: '{% url "randomization:stock" %}',
data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
'site' : $(this).val(),
},
dataType: 'html',
success: function (data) {
// alert(data) -> OK
if (data) {
// alert("Test retour requete ajax"); -> OK
$("#alerte").html(data);
}
}
});
});ajax模板
{% if stock %}
<a class="nav-link" id="informations" href="#" style="color:red; padding-right: 50px;"><strong>Insufficient stock</strong></a>
{% else %}
{% endif %}<li class="nav-item" id="alerte">
// ajax template to be added
</li>,所以我不明白为什么它不添加‘不足股票’的信息?
。。。
我有一个Django项目,它包含一个select和其他带有下拉菜单的链接
我有一个函数,查询数据库以控制中心中的药品库存(默认情况下是用户中心- CHU,或者是选择的中心)并返回一个bool (如果是正确的话),则显示红色警报“不足的库存”,并链接“随机化病人”和“重新分配病人”不应该显示
当用户选择另一个中心而不重新加载页面时,我希望重新评估药品库存,我认为我应该使用ajax,但是我不知道如何实现。


发布于 2019-12-11 20:10:27
是的,您可以为此目的使用ajax。
$.ajax({
url: "Your URL",
type: "POST",
data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
Data1: 'something',
Data2: 'something else',
}
});不要忘记在查询的数据中添加csrfmiddlewaretoken。
发布于 2019-12-11 20:22:41
在社区提问之前,请使用谷歌和谷歌。关于Ajax和使用python有很多教程。请看下面的链接,从Django文档站点开始。只有使用AJAX才能与django DB和您的网站进行交互,而无需重新加载页面。
发布于 2019-12-12 09:24:43
最后,问题来自我代码中的注释行,这些行似乎被解释了?但这两者都非常感谢!
https://stackoverflow.com/questions/59293249
复制相似问题