Tag: django

来自django模板的Ajax调用

我有一个django模板,它扩展了基本模板,该模板具有在其中加载jquery的代码。 这个模板有一个简单的文本框,我想通过ajax获取对象。 {% extends ‘base.html’ %} {% block content %} $(‘#ajaxform’).submit(function(){ console.log(‘Form submitted’); $.get(‘{% url get_ajax_data %}’, $(this).serialize(),function(data){ $(‘#dataDiv’).text(data); }) return false; }); {% endblock %} 在这个模板中,我尝试对get_ajax_data url进行ajax调用,在相应的视图中我只返回文本作为return HttpResponse(‘Ajax respose’) 。 但这似乎不起作用,表单在我返回false时提交。 我不确定我错过了哪里。

从Django中的按钮单击渲染另一个模板

我在django项目中有以下模板文件: base.html文件 base_test1.html base_test2.html 这里base_test1.html和base_test2.html 扩展了 base.html 。 我的主页呈现base_test1.html 。 在我的主页中,我有一个按钮,按下时应该渲染base_test2.html 。 我该怎么做到这一点? 我一直在尝试使用jQuery ajax调用,这样当按下按钮时,我会在我的应用程序的views.py中调用相应的视图。 但这似乎没有用,因为ajax调用只是将html页面返回给请求而不是渲染它。

jQuery .load()在Django中不起作用

我正在尝试调用Django中的url并加载它的内容。 现在我有: $(‘.myClass’).load(‘{% url update_dropdown %}’, {‘kind’: “Book” }, function(data){ alert(data); }); 然后update_dropdown引用的视图是: @csrf_exempt def update_dropdown(request): category = request.POST.get(‘kind’, None) all =False; args = { “label”:category, “all”:all } return render_to_response(‘template.html’,(args)) 但是,.load()由于某种原因不起作用。 如果我直接转到URL,它会显示我期望的数据,但.load()将不合作。 我知道这不是显示问题,因为警报不起作用(除非我删除@csrf_exempt,然后它警告错误页面的HTML) 我对发生的事情感到很困惑,而且我一直在调试这个并试图找到错误几个小时,任何帮助将不胜感激。 如果我将返回类型设为JSON对象并使用getJSON(),我可以使它工作,但我不想

django-dynamic-formset为每个formset创建两个添加/删除链接

出于某种原因,我对django-dynamic-formset的实现表现得有点滑稽。 它为我的模板中的每个动态formset创建了两个添加/删除链接。 我一直在试图弄清楚这一点,并且它得到了我的最好。 这是我正在谈论的错误的屏幕截图 我也可以提供登录,如果您想自己触发错误,这里是我的模板: $(function() { $(‘#ingredients tbody tr’).formset({ prefix: ‘{{ ingredients_formset.prefix }}’, formCssClass: ‘dynamic-ingredients’ }); $(‘#steps tbody tr’).formset({ prefix: ‘{{ steps_formset.prefix }}’, formCssClass: ‘dynamic-steps’ }); }) {% csrf_token %} Ingredients: {% csrf_token %} Steps: 这是forms.py class RecipeForm(forms.ModelForm): reset_recipe = forms.CharField(widget=forms.HiddenInput(), required = False) class Meta: model = Recipe widgets = {‘original_cookbook’:forms.HiddenInput(), ‘pub_date’:forms.HiddenInput(), ‘author’:forms.HiddenInput()} […]

Django项目中的typeahead.js

https://twitter.github.io/typeahead.js/examples/上有一些例子我需要在我的django app中做类似的搜索主题标签。 但我尝试过它并不起作用。 有一个类似的问题,并在stackoverflow上得到了一个,但我不明白如何做到这一点。 在Django项目中使用typeahead.js views.py class SearchTag(View): “”” Search tags with autocomplete (live search) “”” def get(self, request): form = SearchTagForm() context = {‘searchtag’ : form} return render(request, ‘search_tags.html’, context) def post(self,request): q = request.POST[‘q’] form = SearchTagForm() tags = HashTag.objects.filter(name__icontains=q) context = {‘tags’ : tags, ‘searchtag’ : form} return render(request, ‘search_tags.html’, context) class […]

带有许多输入的jQuery自动完成 – django-dynamic-formset

我正在使用jQuery自动完成function( http://jqueryui.com/autocomplete )和Django dynamic-formset( http://code.google.com/p/django-dynamic-formset/ )。 我的一个formset字段需要使用自动完成,所以我使用(简化)附加它: $(‘input[name$=select]’).autocomplete({source:’my_url/’, minLength: 3}); 我在文档就绪时调用它,它工作正常(从ajax获取数据)。 但是,如果我使用django-dynamic-formset添加新行并使用以下命令处理其“已添加”事件: function(row){ $(row).find(‘input[name$=select]’).autocomplete({source:’my_url/’, minLength: 3}); } 它不适用于新添加的行。 怎么了? 更新:尝试使用类 – 没有结果尝试使用on()/ live() – 没有结果尝试在添加新行后销毁自动完成 – 没有结果(它会销毁,但不会创建)。

.click()事件仅在第一次执行

我有下一个脚本,“/ cashflow / arrow /”调用django视图来获取数据并使用它。 然后它返回html中加载的数据。 该脚本在第一次单击时工作正常,但是当我想再次单击一个链接时,没有任何反应。 $(document).ready(function(){ var prev_months = {{ prev_months }} var next_months = {{ meses_desp }} function arrow(meses_ant, next_months) { $.get(“/cashflow/arrow/”, { prev_months: prev_months, next_months: next_months}, function(data){ $(“#cash_grid”).html(data); }); } $(“#dates_up”).click( function() { if (prev_months > 0) { prev_months = prev_months – 1; } next_months = next_months + 1; arrow(prev_months, next_months); […]

如何访问views.py python django中ajax调用中发送的数据

下面是我在html中使用的代码,用于发送一组用户ID(数字)。 点击我发送数组的复选框(checkIds): – var checkIds = [] $(document).on(“click”,”#group_save”,function(){ $(“#candidate-data tr”).each(function(index,rowhtml){ var checked= $(‘input[id=”groups”]:checked’,rowhtml).length; checkIds = jQuery.unique(checkIds) if (checked==1){ checkIds.push($(‘.hideMe’,rowhtml).text()); } }); alert(checkIds); var jsonText = JSON.stringify(checkIds) checkIds.length = 0; var groupName = $(‘input:text[name=”group_name”]’).val(); alert(groupName) $.ajax({ url: “{% url ‘userinfo:groups’ %}” + “?gname=”+groupName, type: “POST”, data:jsonText, dataType: ‘json’, success: function(){ notyfy({type: “success”, layout: “topCenter”, text: “Saved”, […]

如何在Django中使用带有JsonResponse的AJAX创建新用户?

任务很简单,一个人可以输入姓名,电子邮件和密码按“提交”,并在表单下方显示他的帐户信息,而不需要刷新页面。 我不知道我哪里出错了,即使我在检查管理员时设法转到ajax成功function我发现没有创建新用户。 无论如何,提前谢谢。 此外,也许有人可以提供一些与ajax相关的教程或关于djangorestframework的一些信息。 models.py class User(models.Model): name = models.CharField(max_length=255) email = models.EmailField() password = models.CharField(max_length=255) urls.py from django.conf.urls import url, include from ajaxtest import views urlpatterns = [ url(r’$’, views.home, name=’home’), url(r’user/create/$’, views.userCreate, name=’create’), ] views.py def home(request): users = User.objects.all() return render(request, ‘ajaxtest/index.html’, {‘users’: users}) def userCreate(request): if request.method == ‘POST’: name = […]

Django从db自动完成

我有这样的模型: class Baslik(models.Model): user = models.ForeignKey(User, null=True, blank=True) title = models.CharField(max_length=50) timestamp = models.DateTimeField(auto_now_add=True, auto_now=False) updated = models.DateTimeField(auto_now_add=False, auto_now=True) active = models.BooleanField(default=True) 我想根据此模型的标题字段自动完成模板中的输入。 我只是想要自动完成标题,其他什么对我不起作用? 我认为应该用jquery,ajax等来完成。我对它们一无所知。 有没有办法做到这一点? 是否有任何相同的包裹? 谢谢。