今天做表单提交,遇到了个很恶心的问题:当提交按钮是图片时,图片的onclick事件能正确执行js函数,可输入框的onkeydown事件在执行同一个函数时,在return后居然还是进行了提交操作!
相应的代码如下:
可以看到onclick和onkeydown执行的是同一个函数可为什么一个正常返回,另一个却最终提交了!很是郁闷!
后来查了下在相应函数的return之前加了以下一句就好了:event.returnValue=false;
相应的代码如下:
<form id='searchForm' name='searchForm' method='post' action='jsearch/results.jsp'>
<table width='210' border='0' cellpadding='0' cellspacing='0'>
<tr>
<td width='54' height='30' align='center' valign='middle'>关键字:</td>
<td colspan='2' align='left' valign='middle'>
<input id='keyWord' name="query" type='text' size='20' onkeydown="if(event.keyCode==13) javascript:submitSearch();">
</td>
</tr>
<tr>
<td height='28' align='center' valign='middle'> </td>
<td width='86' align='center' valign='middle'><img src='JaXingFaGai/images/button_search.gif' onclick='submitSearch()' width='49' height='20' border='0' class="mouseon" /></td>
</tr>
</table>
</form>
可以看到onclick和onkeydown执行的是同一个函数可为什么一个正常返回,另一个却最终提交了!很是郁闷!
后来查了下在相应函数的return之前加了以下一句就好了:event.returnValue=false;