目录
二、有个知识点 : 表单提交的时候 如果函数返回 false 表单就不提交了 ,切记!
三、首先在js中,我们常用return false来阻止提交表单或者继续执行下面的代码,通俗的来说就是阻止执行默认的行为
一、return 定义:
return 语句会 终止函数的执行 并 返回函数的值。
<!DOCTYPE html>
<html>
<head>
<title>return测试</title>
</head>
<body>
<a href="#"></a>
<a onclick="fun1()">111</a>
<a onclick="fun2()">222</a>
<a onclick="fun3()">333</a>
<a onclick="fun4()">444</a>
<script type="text/javascript">
function fun1() {
return ;
console.log('111 这个不会执行')
}
function fun2() {
return false
console.log('222 这个不会执行')
}
function fun3() {
return true
console.log('333 这个不会执行')
}
function fun4() {
console.log('444 这个会执行')
}
</script>
</body>
</html>
通过上面的例子 可以看出 return ; return false return true 在函数内部都中断了函数的执行
function fun1() {
return ;
}
function fun2() {
return false
}
function fun3() {
return true
}
console.log(fun1())
// undefined
console.log(fun2())
// false
console.log(fun3())
// true
回的结果分别是 undefined false true 注:(undefine != false)
二、有个知识点 : 表单提交的时候 如果函数返回 false 表单就不提交了 ,切记!
首先看看能提交的情况,代码如下:
<!DOCTYPE html>
<html>
<head>
<title>return测试</title>
</head>
<body>
<form method="post" onsubmit="return submitFunction()">
<input type="text" name="nameId">
<button type="submit" id="submit">提交</button>
</form>
<script type="text/javascript">
function submitFunction () {
return ;
}
</script>
</body>
</html>
效果如下: 右边出现了请求(注意:表单请求会刷新页面)
阻止表单提交的代码如下:
<!DOCTYPE html>
<html>
<head>
<title>return测试</title>
</head>
<body>
<form method="post" onsubmit="return submitFunction()">
<input type="text" name="nameId">
<button type="submit" id="submit">提交</button>
</form>
<script type="text/javascript">
function submitFunction () {
return false;
}
</script>
</body>
</html>
果如下:右边没有出现请求,请求被阻止了
三、首先在js中,我们常用return false来阻止提交表单或者继续执行下面的代码,通俗的来说就是阻止执行默认的行为
function a(){
if(True)
return false;
},这是没有任何问题的。
如果我改成这种
function Test(){
a();
b();
c();
}
即使a函数返回return false 阻止提交了,但是不影响 b()以及 c()函数的执行。在Test()函数里调用a()函数,那面里面
return false 对于Test()函数来说,只是相当于返回值。而不能阻止Test()函数执行。
总之:return false 只在当前函数有效,不会影响其他外部函数的执行。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src='./js/jquery-3.3.1.js'></script>
</head>
<body>
<script type="text/javascript">
$(document).ready(function(){
if($('input').length==0){
return false;
}
console.log(123);
});
</script>
<!-- <input type="text"> -->
</body>
</html>
在控制台没有任何输出
总结如下:
1. return ; return false return true 都会在函数内部阻止程序的执行。
2. 只有 return false 会阻止表单的提交。