javascript中的返回值
问题描述:
我是JavaScript新手,我对语法有点困惑。javascript中的返回值
function validateForm()
{
var x=document.forms["myForm"]["fname"].value
if (x==null || x=="")
{
alert("First name must be filled out");
return false;
}
}
<form name="myForm" action="demo_form.asp" onsubmit="return validateForm()" method="post">
First name: <input type="text" name="fname">
<input type="submit" value="Submit">
</form>
我的问题是如果我写的onsubmit = “返回validateForm()” 或写的onsubmit = “validateForm()”。这两种语法有什么区别。所以我只是提供一个例子。
这里是示例
Event = function();或Event = return function();
这两个语法有什么区别
答
onsubmit="validateForm()"
只是调用该函数,返回的任何内容都会丢失,不会影响任何内容。 但在onsubmit="return validateForm()"
中,返回的值会再次返回,如果false将不提交表单,并且如果为true,则会继续提交过程。 所以,你可以用它喜欢:
function check()
{
if(document.getElementByName("fname").value == ""){
return(false); //Do not submit the form
}
return(true); //Submit the forum
}
<form name="myForm" action="demo_form.asp" onsubmit="return(check());" method="post">
First name: <input type="text" name="fname">
<input type="submit" value="Submit">
</form>
答
它们都是无效的。
的return
声明应在功能使用。继return
语句表达的是什么会从函数返回,所以:
function foo() {
return 1234;
}
foo(); // => 1234
如果你想分配功能的Event
标识符,那么你会做它像这样:
Event = function() {
// function body (what do you want the function to do?)
};
所不同的是,后者是没有意义和/或无效。你有更多的背景吗? – deceze 2011-05-30 09:06:18