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();

这两个语法有什么区别

+0

所不同的是,后者是没有意义和/或无效。你有更多的背景吗? – deceze 2011-05-30 09:06:18

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?) 
}; 
+0

这不是确切的代码。我只是问这些语法之间的区别。它只是伪代码 – 2011-05-31 17:42:18

+0

看到我的答案为什么(几秒钟内发布)我认为这是错误的 – Jonathon 2011-05-31 18:35:14

+0

OP添加了一堆代码(问题的后期编辑)...使我的答案看起来不合适。 – James 2011-06-01 15:53:34