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

В этом коде мне нужно выполнить еще одну функцию, такую ​​как проверка, если эта функция истинна, только следующая функция должна работать иначе, иначе она не будет запущена. Может кто-нибудь мне помочь?Две функции в событии onclick javascript?

ответ

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

'если (независимо от == верно)' в точности эквивалентно 'если (что угодно) '. Если вы действительно хотите проверить «истина» и только «истина» (т. Е. Не то, что оценивается как «истина», например «1», «некоторый текст» и т. Д.), Используйте '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();"

Смежные вопросы