【发布时间】:2019-06-03 09:15:24
【问题描述】:
请看下面的代码
AJAX 函数
<script>
$(document).ready(function() {
$("#id_module").on('change', function(){
var mod1 = $(this).val();
alert(mod1);
$.ajax({
url: 'submodule/'+ mod1,
type:'GET',
dataType:'json',
success: function(response){
alert(JSON.stringify(response));
submod=response['submod'];
alert(submod);
$('#submodule').empty();
$("#submodule").prepend($('<option>',
{
value: '',
text: '-- Select Sub Module Type --'
}));
$.each(submod, function(ind){
$("#submodule").append($('<option>',
{
value: submod[ind]['sub_module'],
text: submod[ind]['sub_module']
}));
});
$('#submodule').selectpicker("refresh");
}
});
});
});
</script>
我的 Django -- 网址:
from django.urls import re_path
from django.conf import settings
from django.conf.urls.static import static
from E_Ticketing import views
urlpatterns = [re_path(r'^eForm/report$',views.reports{'template_name':'reports.html'},name='report'),re_path(r'^eForm/resolution$',views.resolutionForm{'template_name':'Resolution_Form.html'},name='resolution'),
re_path(r'^eForm/assign$',views.assignForm,{'template_name':'assign_form.html'},name='assign'),
re_path(r'^eForm',views.eticket, {'template_name':'e_ticket_form.html'},name='eticket'),
re_path(r'^eForm/submodule/(?P<n_moduleid>\d+)$',views.submodule,name='submodule'),
re_path(r'^eForm/fillemp/(?P<n_empid>\d+)$',views.fillemp,name='fillemp'),
]
if settings.DEBUG:
urlpatterns+=static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
我的 Django --视图:
def submodule(request,n_moduleid):
try:
if request.method=='GET':
submod=[]
submod=TblTxEticketdetails.objects.using('ETicketing').values('sub_module').filter(Q(module_id=n_moduleid)).distinct()
else:
messages.error(request, 'Error Occurred!!!')
data = {'submod': list(submod)}
return JsonResponse(data, safe=False)
except Exception as e:
messages.error(request, "Error Occured!!!")
我已经检查了我的所有代码,但我找不到我的代码错误的地方。运行时,会出现警告框,但不会进入 ajax 功能。我需要一点帮助!!!
我以这种方式遇到错误
text status: parsererror
eForm:1676 error: SyntaxError:Unexpected token < in JSON at position 0
【问题讨论】:
-
不得不尝试使用google devTools。您可以查看发回的结果可能是发回的响应存在问题。这是一个关于如何使用它的例子stackoverflow.com/questions/1820927/…
-
是的......我没有得到答案......所以我再次发布......
-
@AndreHoffmann..... 正在启动 ajax 调用....返回内容不可见
-
您绝对不应该像这样捕获所有异常。让 Django 告诉你出了什么问题。
标签: ajax django django-views