我正在尝试使用div
的ID编辑innerHTML
div
。我有一堆div
,因为我的网站是一个社交网络,所以有很多帖子,每个帖子都有自己的div
。这是我的代码:
<a onclick="Like({{id}}, {{likes}}, {{dislikes}});" class="btn btn-like"><span class="glyphicon glyphicon-thumbs-up" aria-hidden="true"></span></a>
<p id="{{id}}">{{likes}} likes | {{dislikes}} dislikes</p>
<script>
function Like(id, likes, dislikes){
alert(likes);
document.getElementById(id).innerHTML = likes + 1 + " likes | " + dislikes + " dislikes"
}
</script>
当我点击Like()
链接时,基本上上面的代码应将帖子的ID,喜欢和不喜欢传递给<a>
功能。在那里,我使用传递的id
来查找具有相同id
的文档并编辑它innerHTML
以向其添加1 likes
。 (我这样做是出于我自己的原因)。但是当我点击<a>
链接时,没有任何反应,没有警报。我检查了元素,<a>
链接显示为onclick="Like(56ce7a3161714811003ae5f7, 1, 0);"
,这是正确的。
但是,如果我使用onclick="Like(100, likes, dislikes);"
调用该函数进行测试,它可以正常工作并提醒喜欢的数量。 {{id}}
太长了吗?或者是否存在问题,因为身份证中有字母?我不知道该怎么做。我希望能够在传递帖子Like
时调用{{id}}
函数。任何帮助表示赞赏!
答案 0 :(得分:1)
您需要在objectid周围添加单引号,例如'56ce7a3161714811003ae5f7'
或'{{id}}'
function Like(id, likes, dislikes) {
alert(id + ','+likes+ ',' + dislikes);
document.getElementById(id).innerHTML = likes + 1 + " likes | " + dislikes + " dislikes"
}
<a onclick="likes=1;dislikes=5;Like('56ce7a3161714811003ae5f7', likes, dislikes);" class="btn btn-like"><span class="glyphicon glyphicon-thumbs-up" aria-hidden="true">Click this</span></a>