我正在为我正在设计的 web 应用程序使用 jquery 的 .replaceWith() 函数。我的 HTML 是这样的:
{% for service in services %}
<div id="service" name="name" value="{{service.name}}">
{{service.name}} <a href='main/name/{{service.name}}'> Click if you want to see more </a>
<div id="rating_services">
<form name="rating">
{% csrf_token %}
<input name="star1" id="star_1" type="radio" class="star" value="1"/>
<input name="star1" id="star_2" type="radio" class="star" value="2"/>
<input name="star1" id="star_3" type="radio" class="star" value="3"/>
<input name="star1" id="star_4" type="radio" class="star" value="4"/>
<input name="star1" id="star_5" type="radio" class="star" value="5"/>
<input type="submit" class="button" id="submit_btn" value="Rate this agency!">
</form>
{% endfor %}
</div>
我的javascript是这样的:
$(function()
{
$(".button").click(function()
{
$('#rating_services').replaceWith("<div id='thanks'> Thanks! </div>");
}
});
我想做的是用户是否评分。显示感谢而不是评分。但是,信息显示在 for 循环中(用于显示多个“代理”)。所以,我只能一个一个地评价,一次一个。如何更改它以便我可以不按顺序进行评分?我试图将 div 更改id
为{{forloop.counter}}
,但随后 javascript 可以处理#
和{{forloop.counter}}
。有什么建议么?