【问题标题】:Send message by hitting 'Enter' key按“Enter”键发送消息
【发布时间】:2023-03-26 19:24:01
【问题描述】:

我设计了一个表单来发送带有提交按钮的消息,但是对于每条消息,我必须使用光标单击提交。如何通过按键盘的“Enter”键来发送消息。这是我的代码

 <div class="message_post" id="myForm">
    <form action="" method="POST">

        <?php 
            if($user_to == "new") {

                echo "Send a message to your friend <br><br>"; ?>

                To: <input type='text' onkeyup='getUsers(this.value, "<?php echo $userLoggedIn; ?>")' name='q' placeholder='Search Username' autocomplete='off' id='search_text_input'>

                <?php
                echo "<div class='results'</div>";

            }
            else { // MESSAGE BOX

                if($userLoggedIn == $user_to)
                    echo "<p style='margin-left:275px;'>You can't send message to yourself</p>";
                else {

                echo "<textarea name='message_body' id='message_textarea' placeholder='Send a message'></textarea>";
                echo "<input type='submit' name='post_message' class='info' id='message_submit' value='Send'>";


                }


            }


         ?>


    </form>




 </div>

 <script>    // Javascript to automatically scrolling down to recent message

    var div = document.getElementById("scroll_messages");
    if(div != null) {
    div.scrollTop = div.scrollHeight;

    }
 </script>

【问题讨论】:

  • PHP 与客户端交互无关。
  • 这是所有相关代码吗?如果你在form 中有一个&lt;input type="submit"&gt;,你这样做了,然后在表单中按回车键将提交它。 codepen.io/anon/pen/LLbxyd
  • 您使用的是&lt;textarea&gt;,这是一种特殊情况。如果您希望在用户按 Enter 时提交表单,您将如何让他们输入多行消息?如果您不希望他们这样做,请将&lt;textarea&gt; 更改为input type="text",您将自动获得输入时提交行为。
  • 谢谢老哥,成功了。但是,当我重新加载我的页面时发送消息后,如果我按继续,消息会再次重复,弹出要求重新提交的弹出窗口。因此,对于每次重新加载,我的最后一条消息都会重复。所以我添加了'标题(“位置:messages.php”);'在 isset 功能下,但没有奏效。

标签: javascript jquery html


【解决方案1】:

这是侦听回车键并汇总表单的 javascript 代码

$('html').keydown(function(e){
  if(e.which==13){
    document.getElementById("myForm").submit();
  }
});

【讨论】:

    猜你喜欢
    • 2016-01-06
    • 1970-01-01
    • 2012-08-13
    • 2019-03-24
    • 1970-01-01
    • 2020-11-18
    • 1970-01-01
    • 2021-02-05
    • 2021-12-09
    相关资源
    最近更新 更多