2012-10-23 28 views
0

這裏是asp.net的瀏覽器genereated一些HTML + jQuery UI的對話框代碼..jQuery UI的 - 對話框確認鍵問題

我的眼睛,它看起來不錯,但問題是,確認按鈕觸發點擊事件與指定的類的鏈接,儘管該事件不會被觸發。

[更新:我更改了「$(」。lDel_23「)。click();」 to document.location.href =「javascript:__ doPostBack('ctl00 $ ContentPlaceHolder1 $ ListView_Sections $ ctrl1 $ LinkBut​​ton_Delete','')」它稱爲函數..所以問題似乎是點擊觸發器無法正常工作該鏈接的HREF設置爲一個JavaScript方法..雖然嘗試手動點擊工程的jQuery點擊觸發調用不..這是否有任何意義? ]

<a href="#" id="aDel_23"></a> 
    <a id="ctl00_ContentPlaceHolder1_ListView_Sections_ctrl1_LinkButton_Delete" title="Delete" class="lDel_23" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$ListView_Sections$ctrl1$LinkButton_Delete','')"></a> 
    <div id="dialog_23" title="Confirm Delete"> 
      Delete Section [section name] 
    </div> 

    <script type="text/javascript"> 
      $(document).ready(function() { 
       $("#dialog_23").dialog({ 
        autoOpen: false, 
        modal: true, 
        width: 400 
       }); 
       // Link to open the dialog 
       $("#aDel_23").click(function(event) { 
        event.preventDefault(); 
        $("#dialog_23").dialog({ 
         buttons: { 
          'Confirm': function() { 
           $(this).dialog('close'); 
           $(".lDel_23").click(); 
          }, 
          'Cancel': function() { 
           $(this).dialog('close'); 
          } 
         } 
        }); 

        $('#dialog_23').dialog("open"); 
       }); 
      }); 
    </script> 
+0

您是否嘗試過移動$(」 lDel_23" 。)點擊()。發生在$(this).dialog('close'); ? – ORION

+0

嘗試和它相同,嘗試另一個JavaScript代碼,而不是重定向到另一個頁面,以確保代碼正確運行,它的工作!唯一的問題是點擊甚至不會在通話後觸發! –

+0

你的意思是,該服務器點擊處理程序不會被觸發?顯示你的標記 –

回答

2

顯然,觸發「a」標籤上的鏈接會更加棘手。看看這個問題,幫助了:trigger a click on a anchor link

根本上改變這一點:$(".lDel_23").click();$(".lDel_23").get(0).click();

+0

非常感謝你,它工作得很好..我覺得這樣做很奇怪! –

+0

是的,這很奇怪。區別在於左側的'click()'是jQuery代碼,而工作的是正常的Javascript(我的意思是元素本地點擊觸發器)。鏈接的SO問題和答案會給你你需要的所有信息:) – Tallmaris