3

ここには複雑なケースがありますが、簡単にするために以下に例を示します。それぞれ独自の onClick 関数を持つ 2 つのボタンがあります。ボタンBをクリックしたときに、ボタンAのonClick関数を呼び出したいです。

<input id="buttonA" type="button" value="BUTTON A" onMouseUp="sayHiA()"></input>
<input id="buttonB" type="button" value="BUTTON B" onClick="sayHiB()"></input>

イベントは onClick() または onMouseUp() であることに注意してください。

ps javascriptのみを使用して実行する必要があります。(jQuery はありません)。ありがとう

4

7 に答える 7

5
<input type="button" onclick="fnc()"/>
<input type="button" id="message" onclick="alert('ok')" />
<script type="text/javascript">
function fnc()
{

document.getElementById("message").click();
}
</script>

これをお探しですか?

于 2012-10-11T13:37:22.350 に答える
3
<html>
<head>//I guess something like setTimeout(function,timeInMilliseconds)
    <script language = "javascript">
    function sayHiA(){
            var v  = document.getElementById('buttonB').getAttribute("onClick");
        setTimeout(v,0);
    }
    function sayHiB(){

        document.getElementById('para').innerHTML = 'wrote';

    }
</script>

</head>
<body>

<input id="buttonA" type="button" value="BUTTON A" onMouseUp="sayHiA()"></input>
<input id="buttonB" type="button" value="BUTTON B" onClick="sayHiB()"></input>

<p id = "para">
Write Here
</p>

</body>


</html>
于 2012-10-11T13:55:43.950 に答える
1
function sayHiB() {
    sayHiA();
}
于 2012-10-11T13:31:44.687 に答える
1

外部 js でこれを試しましたか? これは、JavaScript で実行できる最も基本的なことです。

私はあなたをjsfiddleにしました:http://jsfiddle.net/pjDVP/4/

html :

<input id='bta' type='button' value='button a'></input>
<input id='btb' type='button' value='button b'></input>​

js (jquery ロード済み) :

$(function(){
    $('#bta').click(function(){aORbClick();});
    $('#btb').click(function(){aORbClick();});
})

function aORbClick(){alert('I clicked a or b');}
于 2012-10-11T13:36:29.897 に答える
0

から関数sayHiAsayHiB呼び出すか、後で呼び出すだけです。

sayHiBからの電話

function sayHiB()
{
   sayHiA();
}

またはその後

<input id="buttonB" type="button" value="BUTTON B" onClick="sayHiB(); sayHiA();"></input>

または簡単な方法はjQueryを使用することです。これを行うことができます

function sayHiB(){
   if($('#id-of-a').attr('onclick'))
       $('#id-of-a').click();
   else if ($('#id-of-a').attr('onmouseup'))
       $('#id-of-a').mouseUp();

}
于 2012-10-11T13:32:06.757 に答える
0
function sayHiB(){
    $('#buttonA').click();
}

生の JS:

function sayHiB(){
    var buttonA = document.getElementById('buttonA');
    buttonA.onclick.apply(buttonA); // in onclick function you can get buttonA as 'this'
}
于 2012-10-11T13:32:15.963 に答える
0

おそらく、ボタンの名前/IDをオンにして何をすべきかを判断する汎用関数を作成します。これにより、関数の呼び出しに使用されるイベント属性とは無関係にコードが機能するようになります。

HTML:

<input id="buttonA" type="button" value="BUTTON A" onMouseUp="myFunc(this)"></input>
<input id="buttonB" type="button" value="BUTTON B" onClick="myFunc(this)"></input>

JavaScript:

function myFunc(elem){
    switch(elem.id){
        case 'buttonA':
            sayHiA();
            break;
        case 'buttonB':
            sayHiB();
            sayHiA();
            break;
    }
}

これは、クリックされたボタンがジェネリック関数に渡されるため、必要な DOM 操作にも役立ち、myFunc他の属性や近くの要素にすばやくアクセスできます。

于 2012-10-11T14:03:24.750 に答える