2012-12-19 86 views
1

我想掛鉤jquery樣式yes | no確認框在按鈕回發之前。_doPostBack不觸發事件

應該發生什麼

  • 用戶點擊 「無」 - 無回傳
  • 用戶點擊 「是」 - 回傳,按鍵事件被觸發

目前發生什麼

  • 用戶點擊「無」 - 無回傳
  • 用戶點擊「是」 - 回發,頁面加載事件被觸發,但不 按鈕事件處理函數

所以,我怎樣才能得到該按鈕的事件處理程序,以火?正確的monw它只是去頁面加載事件。

<asp:Button ID="btnSetActive" runat="server" Text="Set as Active" OnClientClick="AllBrandsConfirmation(); return false;" onclick="btnSetActive_Click" /> 


$(function() { 

    // Set all brands (yes button) 
    $('#setAllBrandsConfirmation #yes').click(function() { 
     $.unblockUI(); 
     __doPostBack('ctl00_ctl00_oCPH1_Content_btnSetActive', ''); 
    }); 

    // Set all brands (no button) 
    $('#setAllBrandsConfirmation #no').click(function() { 
     $.unblockUI(); 
    }); 

}); 


// All brands confirmation 
function AllBrandsConfirmation() { 
    $.blockUI({ message: $('#setAllBrandsConfirmation') }); 
} 

回答

1

我想通了......好吧谷歌幫助:)顯然,在你需要使用的控件UNIQUEID,價值不是ID的doPostBack方法的第一個參數。一旦我改變它引發了事件。

3
protected void Page_Load(object sender, EventArgs e) 
{ 
    if(Request.Form["__EVENTTARGET"] != null) 
     if(Request.Form["__EVENTTARGET"] == "ctl00_ctl00_oCPH1_Content_btnSetActive") 
      btnSetActive_Click(sender, e); 
} 

protected void btnSetActive_Click(object sender, EventArgs e) 
{ 
    //do your work here 
}