js中return后表单仍提交

今天做表单提交,遇到了个很恶心的问题:当提交按钮是图片时,图片的onclick事件能正确执行js函数,可输入框的onkeydown事件在执行同一个函数时,在return后居然还是进行了提交操作!

相应的代码如下:

 <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;

你可能感兴趣的:(JavaScript)