2013-07-26 21 views
0

我有一個提交按鈕點擊這是很多彈出窗口很常見。這裏是我的html和點擊事件,如何在jQuery中做這個函數調用?

<div class="myContainer "> 
     <button onclick="javascript:;" class="shcBtn shcBtnCTA submit"> 
      <span>Close</span> 
     </button> 
</div> 

$('.myContainer .submit').on('click', function(){ 
     var socket = new easyXDM.Socket({ 
      onReady: function(){ 
      // you need to wait for the onReady callback before using the socket 
       socket.postMessage("submitflow"); 
      } 
     }); 
    }); 

現在,在一個特定的流程,我必須讓我的提交按鈕調用Ajax調用,如果成功的話,我應該與插座通話繼續進行。我不想改變我的點擊功能,因爲它用在每一個地方。有沒有其他的方式呢?

回答

0

您可以手動觸發點擊事件,這將觸發處理程序

$('.myContainer .submit').click() 

$('.myContainer .submit').trigger('click') 
+0

我想在調用socket之前發生ajax調用..我該怎麼做?而且,只有在Ajax調用成功.. –

+0

關於ajax調用的成功回調,你可以做到這一點 –

0

如果有什麼特別的,你應該讓特定的標記,所以它不」 t獲得與所有其他處理器相同的處理器:

<div class="myContainer"> 
    <!-- normal container --> 
</div> 

<div class="particularContainer"> 
    <!-- particularContainer --> 
</div> 

然後,您可以區分這樣的特殊情況:

$('.myContainer .submit').on('click',function(){ 
    beforeSubmit(); 
}); 

$('.particularContainer .submit').on('click',function(){ 
    $.ajax({/* ... */}).done(function(){ 
     beforeSubmit(); 
    }); 
});