停止JavaScript脚本执行

时间:2011-02-22 08:01:52

标签: javascript jquery html

我有一张由ajax提交的表格。在提交之前,有一个函数可以在提交之前检查表单中的textarea是否为空。如果它是空的,我需要停止脚本并显示一个模态框并阻止提交数据以继续。

如何停止执行?我使用

吗?
break;

4 个答案:

答案 0 :(得分:25)

不,您通常使用return;

当然,具体细节将根据您的实施情况而有所不同。例如,您可能需要return false;并手动检查返回值以查看是否继续在调用函数中执行脚本。

答案 1 :(得分:3)

试试这个:

$('#target').submit(function() {
  alert('Handler for .submit() called.');
  return false;
});

答案 2 :(得分:1)

您可以使用break;,但如果这样做,则无法检查返回值(请使用return;return $bool;)。

我认为像这样的结构会这样做:

.submit(function ()
{
    if (verifyInput())
    {
    // continue
    }
    else
    {
    // show user there is something wrong
    }
});
在这种情况下,

verifyInput()将返回一个布尔值,当然,表示表单是否正确填充。

答案 3 :(得分:1)

虽然返回功能足以阻止默认的提交操作,但我建议调用event.preventDefault()。只需要首先调用它来阻止用户代理默认处理该eventType。这可以说是更现代的做法。

这当然假设你有一个对事件的引用,只要你为它提供一个参数,它就是你的处理函数或你的EventListener对象的handleEvent方法的第一个参数。

它只是工具箱中的另一个工具,它与event.stopPropagation很好地配对,因为当你不想停止默认但只想停止事件分发时。