表单标记内没有 jquery 事件正常工作


No jquery events working properly inside form tag

    <script type="text/javascript">
        $("document").ready(function () {
            $("#done").click(function () {
                $("#nm").hide();
            });
        });
    </script>

但是当我使用表单标签时,它不起作用。当我运行代码时,验证停留了几秒钟,然后消失了。但是在我移除<form>的情况下,它运行良好。为什么会这样?

    <form id="frm1" method="post"  >
        Name:    <input type="text" id="nm"/><br>
        E-Mail:  <input type="email" id="eml"/><br>
        Password:<input type="password" id="pass"/><br>
        <input type="submit" id="done"  value="SUBMIT"/>

    </form>       
您需要

传递一个事件并使用preventDefault()来阻止表单在单击时提交:

$("#done").click(function (event) {
   event.preventDefault();
   $("#nm").hide();
 });

您可以像上面的例子一样使用该事件,也可以避免使用它并返回 false:

        $("#done").click(function () {
            $("#nm").hide();
            return false;
        });