Javascript 将按钮文本从";例如;至;“喜欢”;单击时

Javascript 将按钮文本从";例如;至;“喜欢”;单击时,javascript,php,Javascript,Php,我正在创建一个论坛,用户可以在其中喜欢或不喜欢帖子和评论。我面临的挑战是,我希望“喜欢”按钮的文本可以在不重新加载页面的情况下更改。如何区分页面上的按钮,并将单个按钮文本从“喜欢”更改为“喜欢”,反之亦然此时按钮被创建并显示如下: <?php $result3=mysqli_query($link, "SELECT * FROM cs_comments WHERE post_id = $postID"); while($row3 = mysqli_fetch_assoc($result3)

我正在创建一个论坛,用户可以在其中喜欢或不喜欢帖子和评论。
我面临的挑战是,我希望“喜欢”按钮的文本可以在不重新加载页面的情况下更改。如何区分页面上的按钮,并将单个按钮文本从“喜欢”更改为“喜欢”,反之亦然
此时按钮被创建并显示如下:

<?php
$result3=mysqli_query($link, "SELECT * FROM cs_comments WHERE post_id = $postID");
while($row3 = mysqli_fetch_assoc($result3)){
    $commentID=$row3['comment_id'];
    $memberID=$row3['member_id'];
    $likes=$row3['likes'];
    $content= $row3['content'];
    $anonymous=$row3['anonymous'];


    if($anonymous=='1')
        $name='Anonym';
    else{
        $result4= mysqli_query($link, "SELECT firstname, lastname FROM cs_members WHERE member_id = $memberID");
        $row4=mysqli_fetch_assoc($result4);
        $name = '<a href="../profile/?profile=' . $memberID . '">' . $row4['firstname'] . " " . $row4['lastname'] . '</a>';
    }
    $result5=mysqli_query($link,"SELECT * FROM cs_likes WHERE comment_id=$commentID AND member_id={$_SESSION['memberID']}");
    if(mysqli_num_rows($result5)!=0)
        $liked="unlike";
    else
        $liked="like";




    echo '<div class="post_container">';
    echo '      <div class="info_header">';
    echo '          <div class="info_name">' . $name . '</div>';
    echo '          <div class="info_group"></div>';
    echo '      </div>';
    echo '      <div class="post_content">';
    echo            $content;

    echo '      </div>';
    echo '      <div class="post_footer">';
    echo '          <div class="like_button"><button onclick="likeComment('. $commentID . ')">' . $liked . '(' . $likes . ')</button></div>';
    echo '      </div>';
    echo '</div>';
}

mysqli_close($link);
?>
Like.php

<?php
session_start();
include "./db-connect.php";
$memberID= $_SESSION['memberID'];

if(isset($_POST['post_id'])){
    $postID=mysqli_real_escape_string($link,$_POST['post_id']);
    $sqlCheck="SELECT * from cs_likes WHERE post_id = $postID AND member_id = $memberID";
    $sqlInsert="INSERT INTO cs_likes (post_id, member_id) VALUES ('$postID','$memberID')";
    $sqlDelete="DELETE FROM cs_likes WHERE post_id= $postID AND member_id = $memberID";
}
elseif(isset($_POST['comment_id'])){
    $commentID=mysqli_real_escape_string($link,$_POST['comment_id']);
    $sqlCheck="SELECT * from cs_likes WHERE comment_id = $commentID AND member_id = $memberID";
    $sqlInsert="INSERT INTO cs_likes (comment_id, member_id) VALUES ('$commentID','$memberID')";
    $sqlDelete="DELETE FROM cs_likes WHERE comment_id= $commentID AND member_id = $memberID";
}
else
    echo "Something went wrong";
$checkResult=mysqli_query($link, $sqlCheck);
if(mysqli_num_rows($checkResult)==0)
    $result=mysqli_query($link,$sqlInsert);
else
    $result=mysqli_query($link,$sqlDelete);
?>

所以我找到了解决办法!我几乎没有使用javascript的经验,这就是为什么这个问题对于任何人来说都太简单了,以至于没有人知道我在追求什么
这就是我所做的:

我只是通过在单击时向函数调用添加
this
来发送单击的元素:

echo '          <div class="like_button"><button onclick="likePost('. $postID . ',this)">' . $liked . '</button></div>';

我仍然要感谢所有为理解我的问题而付出努力的人。

那么,这个问题的js在哪里?@Fred-ii-非常抱歉!这是一个错误您的
这应该在前端实现请共享您的html和javascript文件,否则我们无法真正帮助您;)
echo '          <div class="like_button"><button onclick="likePost('. $postID . ',this)">' . $liked . '</button></div>';
function likePost(id, elem) {
if(elem.innerHTML== "like")
    elem.innerHTML="unlike";
else
    elem.innerHTML="like";