我有一个有效的 AJAX 请求,当用户单击一个元素时更新投票数据库。元素的 ccs 改变,显示的票数更新。
这是我的一些 JS
function voteSuccess(data, textStatus, jqXHR) {
$("#"+postId).addClass('red').removeClass('blankUpVote'); //CSS Element
$('#vote'+postId).html(data); //amount of votes is updated
}
wherepostId
被声明为之前元素的 this.id。我正在尝试设置标识符
$("#"+postId)
至
$("#post"+postId)
并将模板中相应元素的 id 更改为
id="post{{ post.pk }}"
从
id="{{ post.pk }}"
但它不起作用!"ValueError: invalid literal for int() with base 10: 'upVote12'"
当我运行它时,我得到了异常。
第二部分,更新投票的数量以相同的方式设置并且有效。标识符在哪里
$('#vote'+postId)
并且模板中对应元素的id是
id = "vote{{post.pk}}"
想不通!我需要在 id 中添加一个字符串,以使其与 post 容器中的其他 id 不同,后者将post.pk
在模板中使用相同的变量。
它适用于第二个标识符,但不适用于第一个。有人对可能发生的事情有任何想法吗?
谢谢