js中onsubmit[转载]

在写表单处理的时候,经常会用到onSubmit事件,而onSubmit事件经常用到return关键字,比如:

 

<form name="form1" action = "#" onsubmit="return rececive()">


这样处理的作用是当点击submit时,调用receive函数,通过receive函数对表单进行初步的判断处理,然后返回true或者false。当返回true时,onSubmit事件就为

 

 

onSubmit="return true"


这时进行下一步。

 

若receive处理之后返回false,则onSubmit事件就为

 

onSubmit="return false"


这时返回一个false,系统将不会继续运行。

 

这里return的作用就是对receive函数运行返回的结果,再向上返回,以便能在发现错误时即使停止后面继续将错误的数据拿去运行。

如果不加return的话,那么onSubmit在逻辑上就可以看成

 

onSubmit="false"


或者

 

 

onSubmit="true"


这样也只能算是把false或者true字符串赋值给onSubmit。并不具有一定的功能,即不论表单中是否出现错误,都会继续运行下去。当然,表单中的错误处理也可以通过服务器端进行处理,但是能在前端处理的,就尽量在前端处理,不然会加大服务器的压力。

 

很多表单处理函数,比如上面说的receive函数,里面也许不会有return true的语句(但是绝对有return false的语句),因为当一个函数顺利运行完成之后,系统将默认的返回一个true,所以true是可选的,但是false却是必须的。

下面来看一下receive函数的大致写法:

function rececive()
{
    
    var formLength = document.forms['form1'].elements.length;
    for(var i = 0; i < formLength - 1; i++)
    {
        if(document.forms['form1'].elements[i].value.length == 0)
        {
            alert("第" + (i + 1) + "个文本没有输入");
            return false;
        }
    }
}
posted @ 2017-07-08 16:33  某个润滑君  阅读(765)  评论(0编辑  收藏  举报