django+javascrip的疑问一

我的梦境 提交于 2019-11-29 09:42:56

前些天遇到一个需求,需求为:html动态生成的表格,需要增加一个select框去对内容进行筛选显示,选择对应的选项,表格中仅显示与该选项一致的数据

实现思路为:通过ajax传递select值,在后台获取新的数据后,将新数据传递回来

python代码

@login_required
def myhtml(request):
  username = request.user.username
  data = testtable.objects.filter(Actor=username)
  htmldata = {
    'username': username,
    'data': data,
  }
  return render(request, 'myhtml.html', htmldata)

@login_required
def chooseproject(request):
  '''选择具体项目'''
  username = request.user.username
  if request.is_ajax():
    chooseproject = request.POST.get('chooseproject')
    if chooseproject == 'All Projects':
      data = testtable.objects.filter(Actor=username)
    else:
      data = testtable.objects.filter(
        Q(ProjectName=chooseproject) & Q(Actor=username))
    htmldata = {
      'username': username,
      'data': data,
    }
    return render(request, 'myhtml.html', htmldata)

 

jq代码:

$('#chooseproject').change(function(){
  // 提取到所选择的内容
  var project = $('#chooseproject').val();
  $.ajax({
    cache: false,
    url: "chooseproject",
    dataType: 'text',
    type: 'POST',
    async: false,
    data: {
      "chooseproject": project,
    },
    success: function (data) {
      $('#thebody').html(data);
      $(function(){
        $('#chooseproject').val(project);
      });
    },
  });
});

然而在代码执行到$('#thebody').html(data);时(thebody为body的id),会出现html的css样式加载了两遍的情况

尝试将thebody改成thehtml(thehtml为html的id),则会出现html的css样式无法加载的情况

在网上暂时未能找到相关解决方案

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!