[英]Cannot receive data in Django View from frontend through Ajax
我正在尝试将前端的数据发布到Django视图,并在另一个页面内呈现该视图,但是我没有从前端接收任何数据。 任何帮助表示赞赏! 提前致谢。
jQuery:
<script>
window.getDisplayConfirmation = function(ele){
var row = $(ele).closest('tr');
var displayObjectId1 = row.find('td').eq(2).text()
console.log(typeof(displayObjectId1))
console.log(displayObjectId1)
var displayObjectId = parseInt(displayObjectId1)
$.ajax({
url:'/detailedData/',
data: {
'displayObjectId': displayObjectId
},
success: function(){
alert('Vote successful!');
$("#dataDisplayArea").load("/detailedData/");
},
});
};
</script>
视图:
def detailedData(request):
displayObjectId = request.GET.get('displayObjectId')
displayObjects = TemporaryModel.objects.get(id=displayObjectId)
return render(request, 'frontend/detailedData.html', {'obj': displayObjects,"receivedObjectId":displayObjectId})
html:这是此html页面中表格的一部分
<td ><button id = "showButton" class ="btn btn-primary btn-xs" onclick="getDisplayConfirmation(this)"> S </button></td>
<td ><button id = "deleteButton" class = "btn btn-primary btn-xs" onclick="getDeleteConfirmation(this)"> D</button></td>
<td >{{ obj.id}}</td>
我在同一HTML页面上也有此部分,以将呈现的页面作为子页面包括在内:
<div id ="dataDisplayArea">
{% include 'frontend/detailedData.html' %}
</div>
网址:
urlpatterns = [
path('', auth_views.login, {'template_name': 'registration/login.html'}, name='login'),
path('panelOne/', views.panelOne, name='panelOne'),
path('panelTwo/', views.panelTwo, name='panelTwo'),
path('detailedData/', views.detailedData, name='detailedData'),
path('panelThree/', PanelThreeView.as_view(), name='panelThree'),
]
您的视图正在返回数据。 但是您的Ajax成功函数将忽略该数据,然后将另一个请求发送到不带参数的相同URL。 不要那样做 使用返回的数据。
success: function(data){
alert('Vote successful!');
$("#dataDisplayArea").html(data);
},
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.