2013-07-16 88 views
3
<a href="#" type="image" class="topopup" onclick="ShowDIV3();" >Click Here</a> 

在这段代码中,我需要执行另一个函数,如验证,如果该函数为true,则只有下一个函数应该运行,否则将不会运行。谁能帮我?javascript onclick事件中的两个函数?

回答

1

尝试像

<a href="#" type="image" class="topopup" onclick="ShowDIV3();" >Click Here</a> 

function ShowDIV3() { 
    if(true) //Here can use condition for validation 
     another_fun(); 
    else 
     return false; 
} 

打电话给你的另一功能时的条件,在你的showDIV3功能的实现

+1

是的,这是简短和可读的。 –

+0

是什么原因downvote它.. ?? – Gautam3164

+1

似乎他们刚刚得到了125代表:P。移动哥哥..保持回答。 –

4

试试这个代码:

<a href="#" type="image" class="topopup" onclick="if (ShowDIV3()) {myotherfunction()}">Click Here</a> 
+0

'如果(无论==真)'是完全等同于'如果(其他) '。如果你真的想要检查“true”和“true”(即不是'true',比如'1','some text“等),可以使用if(whatever ===真)'。 – Bart

+0

谢谢巴特。我纠正了。但我的第一个代码似乎工作。 –

+1

这应该真的被重新分解出html。 –

1

尝试这种方式

onclick=" if (ValidateFunction()) return ShowDIV3();" 
0

为什么returning那里执行?为什么不简单?

function ShowDIV3(){ 


     ----- 

    if(resultBoolean){ 
    proceedToanotherFunc(); 

    } 

    } 

恕我直言这将是更具可读性,其他在HTML

0

有写逻辑就开始验证在ShowDIV3()功能,并根据验证调用你的下一个函数从ShowDIV3()函数内部

1

jQuery中,你可以像这样做,这也将允许多个处理器和更好的活动正常化和改善的关注点分离。

$(".topopup").on("click", function(){ 
    if (ShowDIV3()){ 
     OtherStuff(); 
    } 
}); 
1

在末你showDIV3()功能有这样的事情,

function showDIV3() 
{ 
    // Your process, and then at the end, 

    if(result) 
    { 
     // Call the other function 
    } 
    else 
    { 
     // Return false 
    } 
} 
0

只需在您的JavaScript中创建更多语句

function ValidateStatments() { 

    var val = document.getElementById("Value 1").value; 
    var val2 = document.getElementById("Value 2").value; 


    if(val != "Value 1"){ 
     return false; 
    } 
    else if (val2 != "Value2){ 
     return false; 
    } 
return true; 
} 

和你的链接上添加你的JavaScript所以如果属实,这将允许用户做动作onclick="return ValidateStatments();"