【问题标题】:How to update a Django query variable using Ajax Query?如何使用 Ajax Query 更新 Django 查询变量?
【发布时间】:2011-11-24 15:51:01
【问题描述】:

我在 Django 中有一个搜索表单。当用户单击提交按钮时,页面会重新加载并获取查询中的新元素。我正在尝试在 Ajax 查询中执行此操作,但是当我获得成功选项中的元素时,我不知道如何将新数据更改(分配)给变量。

JS

   $.ajax({
        url: 'url', 
        type: "POST",
        data: "name=" + selected,
        success: function(data){
            alert(data);
        },
        error: function (xhr, textStatus, thrownError){
            alert("xhr status: " + xhr.statusText);
        },
    });

查看

 def search(request, template_name="search/search.html"):

    if request.method == 'POST':

       search_terms = request.POST.get('name')

       t_places = Place.objects.filter(category__in=search_terms)
       places =  TranslatedPlace.objects.filter(place__in=t_places)

      return HttpResponse(places)

HTML

 {% for item in places %}
     <li class="search_item">
        <div>{{ item.name }}</div>
        <div>{{ item.owner }}</div>
        <div>{{item.place.category }}</div>
        <div>{{item.locality}}, {{item.county}}</div>
     </li>
 {% endfor %}

当我在 Ajax 的“数据”变量中收到新数据时,如何在 Django 的“地点”变量中更改它?

【问题讨论】:

  • 能不能发一下python吐出来的html
  • ajax succes 选项获取查询中的元素,我在视图中不返回任何 HTML 代码

标签: jquery ajax django django-views


【解决方案1】:

您可以在 ajax 成功处理程序中修改以下代码

$("li.search_item").find("div").each(function(i,j){
$(j).html("one"+(i+1));
});

http://jsfiddle.net/3nigma/AueSp/1/

【讨论】:

  • 我认为 Jquery html 函数使我的代码变得困难,因为我在 Django 中安装了自动分页(分页模块),所以当用户更改页面时,我必须再次更改数据。难道没有另一种形式可以做到这一点吗?
  • 感谢您的回答。我已经看到我需要这样做,所以我将使用 Dajax。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-17
  • 2015-10-02
  • 1970-01-01
  • 2020-10-01
  • 2021-04-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多