<form method="get" action="/" onsubmit="SubmitForm()">
<input type="text" title="" value="" name="q" class="search-input" id="gsearch" />
<input type="submit" value="" name="sa" id="search-button"/>
</form>
<script type="text/javascript">
function SubmitForm(){
window.open("http://test.com/gsearch.php?cx=015214977:8tebxhu0mrk&cof=FORID:11&ie=GB2312&as_q="+document.getElementById('gsearch').value);
return false;
}
</script>
当我提交按钮时,原始页面会刷新一次。怎么预防呢?谢谢。
答案 0 :(得分:3)
更改您的表单onsubmit属性并插入 return ,如下所示:
<form method="get" action="/" onsubmit="return SubmitForm();">
答案 1 :(得分:3)
您正确地从SubmitForm
方法返回false,但是您没有在表单的onsubmit
处理程序中捕获该响应。将其更改为:
<form method="get" action="/" onsubmit="return SubmitForm()">
请注意,上面添加了return
关键字。
答案 2 :(得分:1)
您不需要使用JavaScript。这将以相同的方式工作:
<form method="get" target="_blank" action="http://test.com/gsearch.php">
<input type="hidden" name="cx" value="015214977:8tebxhu0mrk" />
<input type="hidden" name="cof" value="FORID:11" />
<input type="hidden" name="ie" value="GB2312" />
<input type="text" title="" value="" name="as_q" class="search-input" id="gsearch" />
<input type="submit" value="Submit" id="search-button"/>
</form>
JavaScript非常好用,但是当纯HTML完全可以做同样的事情时,真的不需要使用它。