Javascript - 在Form vs Function中返回关键字

时间:2011-02-15 21:24:50

标签: javascript

返回如何在表单与函数中工作?

我知道你可以在一个函数中return false,它会停止程序的流程,如果你想取消回发,那就很好了。为什么我也会在表格中获得回报?

来自Christian Heilmann开始的javascript书的作者片段:

<form action="whatever" method="post" onsubmit="return checkSearch();">

function checkSearch()
{
  alert ('foo');
  return false;
}

3 个答案:

答案 0 :(得分:3)

当从处理事件的函数返回false时,它(通常)将停止默认操作。因此,对于您的示例,如果onSubmit函数返回false,则表单将不会提交(默认操作)。

同样,如果从onClick事件返回false,则会暂停默认操作(在链接之后)。如果返回true,浏览器将在脚本执行后尝试按照链接进行操作。

答案 1 :(得分:2)

  

为什么我也会在表格中获得回报?

因为 (从事件处理程序返回false)是停止程序流程的(在这种情况下,事件的进一步处理)。如果没有它,函数本身的return false就没有效果了!

答案 2 :(得分:2)

这样看:

function onsubmit(){
  return checkSearch();
}