我们已经完成了一项分配任务,该任务需要我们向正在开发的网站添加简单的评论表单。评论表单允许用户输入其句柄和评论,当他们点击提交时,他们的评论将被添加到评论表单下方的列表中。
他们的注释应该具有日期和时间,以及一个点赞按钮,单击该按钮将为totalLikes
或类似内容增加一个全局变量。
我有用于添加带有日期,时间和赞按钮的注释的代码,以及我测试过的“总赞”的代码。
我遇到的麻烦是编写onClick
事件,该事件允许在注释后附加like按钮来运行增加点赞的功能。
我添加注释和赞按钮的代码如下:
function addComment() {
var node = document.createElement("Li");
var userHandle = document.getElementById("handle").value; //gets contents of handle (name) form
var userComment = document.getElementById("comment").value; //gets contents of comment form
var date = new Date(Date.now()).toLocaleString(); //creates formatted var for the date
var fullString = "Username: " + userHandle + "\n \n Comments: " + userComment + " " + date; //String output for user comment
var textnode = document.createTextNode(fullString); //create textnode using this formatted output
var likeButton = document.createElement("Button"); //create button element
likeButton.innerText = "Like"; //set button's internal text
likeButton.onClick = function increaseLikes(); //problem here!!!
node.appendChild(textnode); //append text node
node.appendChild(likeButton); //append like button
document.getElementById("comments").appendChild(node);
}
附加的like按钮应该运行以下代码:
likes = 0;
function increaseLikes() {
likes++;
return likes;
}
function likeClick() {
increaseLikes();
alert("Total likes: " + likes);
}
当我使用按钮标签将正常按钮插入页面时,上面的代码块正常运行。
任何想法如何使它起作用?如果我在尝试给like按钮提供onClick
事件的JavaScript处将其注释掉,则一切正常,并且注释已发布,但是like按钮什么也没做(显然)。如果我取消评论,则点击提交时将不会发表评论。