<form>只有一个<input /> GET自动</form>

时间:2014-06-29 13:12:47

标签: html input get

<form id="login_form">
    <input type="text" name="forgot_email" placeholder="Email">
    <button id="forgot_button" type="button">Send</button>
</form>

这是我的表格,它并不意味着发送到任何地方,而不是POST或GET,只是作为一个表格。 POST由我的jquery $ .post函数处理。 但是,当我在INPUT内部单击ENTER时,它就像对同一页面的GET一样。 URL更改为“localhost / xxx.php?forgot_email =”

这只发生在它只是一个输入字段时,而不是多个输入字段,但在这里我只想要一个输入字段而不是GET到同一页面......

这是解决这个问题的方法吗?我现在很困惑,这是简单的HTML。 (我的jquery没有错,当jquery被禁用时它的行为方式相同)

4 个答案:

答案 0 :(得分:1)

使用提交按钮替换您的按钮,并将您的JavaScript绑定到表单的submit事件,而不是按钮的click事件。无论用户使用哪种方法触发表单,您的JS都会触发。

确保您提交事件prevent the default action,以便浏览器不会加载新页面。

答案 1 :(得分:0)

<form id="login_form" onsubmit="return false;">
    <input type="text" name="forgot_email" placeholder="Email">
    <button id="forgot_button" type="button">Send</button>
</form>

这样可以避免将表单发送到服务器。

答案 2 :(得分:0)

如果使用jquery $('button id or class').click(function(){return false;});

答案 3 :(得分:0)

您还可以考虑将输入包装在div而不是form中,因为您没有使用其中的任何功能。它还可以帮助您省去像Quentin建议的那样取消提交按钮的默认事件。