想要HTML表单提交什么也不做

我想要一个HTML表单提交后不做任何事情。

action="" 

是不好的,因为它导致页面重新加载。

基本上我想要一个ajax函数,每当一个button被按下,或者有人在input数据后点击“enter”。 是的,我可以删除窗体标签,并添加只是从button的onclick事件调用函数,但我也希望“击中进入”function,而不是所有的黑客。

通过使用return false; 在您从提交button调用的JavaScript中,您可以停止提交表单。

基本上,你需要下面的HTML:

 <form onsubmit="myFunction(); return false;"> <input type="submit" value="Submit"> </form> 

那么支持javascript:

 <script language="javascript"><!-- function myFunction() { //do stuff } //--></script> 

如果你愿意,你也可以有一定的条件允许脚本提交表单:

 <form onSubmit="return myFunction();"> <input type="submit" value="Submit"> </form> 

搭配:

 <script language="JavaScript"><!-- function myFunction() { //do stuff if (condition) return true; return false; } //--></script> 

它也起作用:

 <form id='my_form' action="javascript:myFunction(); return false;"> 

怎么样

 <form id="my_form" onsubmit="the_ajax_call_function(); return false;"> ...... </form> 

您可以使用以下HTML

 <form onSubmit="myFunction(); return false;"> <input type="submit" value="Submit"> </form> 

作为button的onclick事件的一部分返回false将停止表单提交。

即:

 function doFormStuff() { // ajax function body here return false; } 

只需点击提交button即可调用该function。 有很多不同的方法。

使用jquery。 也许把一个div从表单中放到你的元素上。 然后使用preventDefault(),然后进行你的ajax调用

 <form action='javascript:functionWithAjax("search");'> <input class="keyword" id="keyword" name="keyword" placeholder="input your keywords" type="search"> <i class="iconfont icon-icon" onclick="functionWithAjax("search");"></i> </form> <script type="text/javascript"> function functionWithAjax(type) { // ajax action return false; } </script>