Jquery将最后一个输出作为值


Jquery takes last output as value

我有一些代码,它用于向数据库发送注释。我有jquery和ajax代码:

<script type="text/javascript">
    $(document).ready(function() {

            $('#comm1').keypress(function(event) {
            var key = (event.keyCode ? event.keyCode : event.which);
            if (key == 13) {
                 var comment = $('#comm1').val();
                var fromstatid = '<?php echo $status->fromid; ?>';
                var status = '<?php echo $status->id;?>';
                var fromid = '<?php echo $frid; ?>';
                $.ajax({
                    method: "POST",
                    url: "d/includes/counts.php",
                    data: {u: fromid, status: status, comment: comment, fus: fromstatid},
                    success: function(status) {
                        $('#comm1').val('');
                    }
                });
                };
            }); 
    });
</script>
#comm1 is textarea for comment ..

对于php,我喜欢数据库的基本输出,问题是我的jquery只使用数据库的最后一个输出作为值。换句话说,每当我键入一个注释时,它就会发送到数据库中进行最后一次输出。如果我有"回复"按钮,然后它将我发送到新页面或其他地方,在那里我可以将数据库的输出限制为1或仅限于我想评论的地方,它就会起作用。但我可以在所有评论的页面上做吗。。。此外,我还试图将id设置为数据库中的某个单词+php-id,以用于该输出,但当我将其添加到jquery代码中时,似乎注意到了将要工作。。。。我尝试的代码是:$("#something<?php echo $status->id; ?>").keypress.....它停止了脚本,看起来整个脚本都不工作了。。。

我问了类似的问题,但没有人回答我正确的问题。。。我还在想,我可以在jquery中对这段代码进行foreach吗。。并对每一个输出说做点什么。我真的不知道为什么它只使用页面上的最后一个输出作为值,但如果有人有一些解释,它会有很大帮助?

编辑时间:或者我需要为每个输出回显jquery代码吗?

更新:尝试通过回显整个jquery代码,但它不起作用。。。。

新建:正如你所问的,我有d/includes/counts.php文件和index.php

在counts.php中,我只是在数据库中输入通过ajax发送的值。。。在index.php中,我说我有基本的foreach数据库输出来回显类似$status->text的内容,并为comment回显textarea,在那里我可以为text键入comment。。。代码太长了,我对那个代码没有问题,我对将jquery代码连接到所有输出有问题,不仅仅是最后一个。。。。


为什么我的var status = '<?php echo $status->id; ?>';var fromstatid = '<?php echo $status->fromid; ?>';只使用最后的输出值?我可以为每个输出在echo中创建一些var,并在代码中使用该var来导航对哪个输出进行了评论吗?

我发现脚本也只能在一个输出上工作,比如如果我试图对另一个输出进行评论并按ENTER键,它就不会工作。。。。

您必须知道,只会检索PHP文件的最后一个输出。所以我想知道你在PHP文件中输出了什么?你能发布PHP代码吗?(很抱歉,在这里回答,但没有足够的分数来评论)。