Django模板:在for循环中更改表单的id
我有一个模型和一个表格如下Django模板:在for循环中更改表单的id,django,django-forms,Django,Django Forms,我有一个模型和一个表格如下 class Comment(models.Model): post = models.ForeignKey('Post', related_name='comments',on_delete=models.CASCADE,) author = models.CharField(max_length=200) text = models.TextField() created_date = models.DateTimeField(def
class Comment(models.Model):
post = models.ForeignKey('Post', related_name='comments',on_delete=models.CASCADE,)
author = models.CharField(max_length=200)
text = models.TextField()
created_date = models.DateTimeField(default=timezone.now)
slug = models.SlugField(unique=True, default=uuid.uuid4)
class CommentForm(forms.ModelForm):
class Meta:
model = models.Comment
fields = ('text',)
widgets = {
'text': forms.TextInput(attrs={
'id': 'comment-text',
'required': True,
'placeholder': 'Say something...'}),
}
在Django模板中,我想在for循环中多次使用此表单,但每次迭代我都想更改循环中文本的id。目前我正在使用下面的代码
{% for post in post_queryset %}
{% csrf_token %}
{% bootstrap_form formComment %}
{% endfor %}
有人能帮我修改代码,这样循环中的id每次都会改变。我会修改一个周围的元素,并通过该元素将它们作为目标。我正在使用一个给你买的模板标签。但是你可以使用
post
属性,但我不知道你的模型是什么样子
{% for post in post_queryset %}
{% csrf_token %}
<div id="post-{ forloop.counter }">
{% bootstrap_form formComment %}
</div>
{% endfor %}
{%forpost\u queryset%}
{%csrf_令牌%}
{%bootstrap_form formComment%}
{%endfor%}
确认一下,您想更改for循环中每个表单中HTML输入元素的id吗?是的,我想更改HTML输入的id。这样您就可以使用javascript或css将每个表单作为目标了吗?是的,我想使用JavaScript获取输入值。我的主要目标是获取JavaScript中输入的值,以便使用AJAX提交表单,如$.AJAX({url:“create_comment/”,键入:“POST”,数据:{the_comment:$('#comment text').val(),您认为如果使用周围的元素标记是否可行。谢谢!是的,您可以像使用css一样在DOM中钻研。它将类似于$('#post-1#comment text).val()
。请签出