0

如果这是一个简单的问题,请原谅我,但我对 Jquery/Javascript 有点陌生。我想知道的是如何通过按回车键同时添加图像和评论。我的意思是:用户在文本区域中输入评论,点击回车,他/她的评论与用户名一起出现在 div 中。我想要的是与该用户对应的个人资料图片也会出现,以及对评论进行评分或收藏的选项。到目前为止,我得到的如下:

$(document).ready(function() {
    $('.comment').keyup(function(e) {
        if (e.keyCode == 13){
            var post_id = $(this).attr('post_id');
            var comment = $(this).val();
            $(this).val('');
            $.post('../php_includes/comment.php', {post_id: post_id, comment: comment});
            $(this).parent().children('.comments').append("<div class='view'><?php echo $_username;?> remarks: " + comment + "</div>");     
        }
    });
});

这行得通。在div“视图”中出现:用户名备注:comment。但是,当我这样做时:

$(document).ready(function() {
    $('.comment').keyup(function(e) {
        if (e.keyCode == 13){
        var post_id = $(this).attr('post_id');
        var comment = $(this).val();
        $(this).val('');
            $.post('../php_includes/comment.php', {post_id: post_id, comment: comment});
        $(this).parent().children('.comments').append("<div class='view'><?php echo $vis_pic;?><?php echo $_username;?> remarks: " + comment + "</div>");       
        }
    });
});

($vis_pic 包含用户图片的路径)什么也没有发生——它甚至没有清除文本区域。我试图在一个变量中附加、前置、声明 html - 它只是不想吃它。此外,当我在添加评论后添加 php 变量以显示速率和收藏选项时,它什么也不做。这让我发疯了,因为我在 Inet 上搜寻了几天,但似乎没有任何效果。再次抱歉,如果这是一个简单的问题。非常感谢您的努力。

4

1 回答 1

0

您应该显示评估它的结果,而不是显示 php 代码。我认为问题在于$vis_pic包含您应该转义的双引号:

<?php echo str_replace('"', '\"', $vis_pic); ?>

也许你也可以使用addlashes

编辑:

你说$vis_pic包含

$vis_pic ="<img class=\"commentpic\" src=\"../user/$_userv/mini_profilepic.jpg\">";

问题是您转义了 php 的引号,但是当您使用echo $vis_picphp 时,不会 print \,因此您的代码变为:

.append("<div class='view'><img class="commentpic" src="../user/[userv]/mini_profilepic.jpg"> remarks: " + comment + "</div>");
于 2013-10-06T16:16:14.317 回答