Можно ли добавить два события onclick JavaScript в один тег кнопки ввода? Вызов двух разных функций?
Могу ли я иметь два события onclick JavaScript в одном элементе?
Ответ 1
Это работает:
 <input type="button" value="test" onclick="alert('hey'); alert('ho');" />
И это тоже:
function Hey()
{
    alert('hey');
}
function Ho()
{
    alert('ho');
}
.
<input type="button" value="test" onclick="Hey(); Ho();" />
Итак, ответ - да, вы можете:) Однако я бы рекомендовал использовать ненавязчивый JavaScript. Смешивание js с HTML просто противно.
Ответ 2
HTML
<a href="#" id="btn">click</a>
И javascript
// get a cross-browser function for adding events, place this in [global] or somewhere you can access it
var on = (function(){
    if (window.addEventListener) {
        return function(target, type, listener){
            target.addEventListener(type, listener, false);
        };
    }
    else {
        return function(object, sEvent, fpNotify){
            object.attachEvent("on" + sEvent, fpNotify);
        };
    }
}());
// find the element
var el = document.getElementById("btn");
// add the first listener
on(el, "click", function(){
    alert("foo");
});
// add the second listener
on(el, "click", function(){
    alert("bar");
});
При нажатии будет отображаться как "foo", так и "bar".
Ответ 3
Вы можете прикрепить обработчик, который будет вызывать так много других, как вам нравится:
<a href="#blah" id="myLink"/>
<script type="text/javascript">
function myOtherFunction() {
//do stuff...
}
document.getElementById( 'myLink' ).onclick = function() {
   //do stuff...
   myOtherFunction();
};
</script>
Ответ 4
Нет необходимости иметь две функции внутри одного элемента, вам нужно только одно, которое вызывает два других!
HTML
<a href="#" onclick="my_func()" >click</a>
JS
function my_func() {
    my_func_1();
    my_func_2();
}
Ответ 5
Вы также можете попробовать что-то подобное
<a href="#" onclick="one(); two();" >click</a>
<script type="text/javascript">
    function one(){
        alert('test');
    }
    function two(){
        alert('test2');
    }
</script>
