2011-04-09 210 views

回答

3

你的意思是這樣這個?

$('#button1').click(function() { 
    $('#button2').click(); 
}); 

如果click被稱爲不傳遞一個參數,它會觸發元素上的click事件。

Documentation is helpful

關於您的評論更新:

你有沒有過這樣的問題嗎?我的小測試表明,代碼是按順序執行的,意思是在點擊處理程序之後執行觸發點擊後的代碼。但也許我的處理程序是不是很複雜?

如果確實遇到問題,你可以把所有的在#button2單擊處理程序在其自身的功能執行的代碼,並呼籲這一個在#button1單擊處理程序:

function lotsOfWork() { 

} 

$('#button2').click(lotsOfWork); 

$('#button1').click(function() { 
    lotsOfWork(); 
    // more stuff here 
}); 

如果lotsOfWork做一些異步調用你還必須使函數接受它完成其工作後,將要執行的回調。

+0

的主要問題是我需要等待,直到代碼執行BUTTON2的是完整的話,我需要繼續按鈕1某些代碼,如果我寫這個代碼,我不能等到button2的代碼執行完成時。 – Sandeep 2011-04-09 09:38:16

+0

@Sandeep:請參閱我的更新。 – 2011-04-09 09:42:23

+0

Okk Thnx,它會工作,我需要在我的代碼中進行一些更改... – Sandeep 2011-04-09 09:47:54

1

嘗試這樣的事:

<input type="button" id="btn1" value="click A"> 
<input type="button" id="btn2" value="click B"> 
<script> 
$(function(){ 
    $('#btn1').click(function(){ 
     $('#btn2').trigger('click'); 
    }) 
}) 
</script> 

火,你只需要調用.trigger方法的其他對象的事件,傳遞你假裝觸發事件名稱。

1
$('#buttonone').click(function(){ 
    $('#buttontwo').trigger('click') 
}) 

點擊buttonone將觸發buttontwo點擊

0
 
$(function(){ 
    $("#id_btn").click(function(){ 
       call your function for 2nd button 
    }); 
}); 
or 
$('#id_btn').bind('click', function() { 
    $('#id_btn').trigger('click'); 
    }); 
相關問題