2013-01-21 71 views
0

我在我的asp.net MVC視圖上顯示了一個關於焦點的JQuery UIi對話框的文本框。在這個對話框中,我想確保點擊OK按鈕時,父頁面上的相同文本框應該顯示彈出的焦點。我試圖使用JQuery焦點之前和之後像這樣關閉:關注jquery ui對話框關閉後的文本框

$(this).dialog("close"); 
$("#DefaultCallFrom1").focus(); 

但它不工作。請爲此提出解決方案。

回答

2

當初始化對話框中,使用關閉事件將焦點設置在關閉對話框:

$(this).dialog({ 
    close: function(event, ui) { 
    $("#DefaultCallFrom1").focus(); 
    } 
}); 

jQuery UI的對話框Docs close事件。

編輯

如果你想在對話框中的按鈕後,將焦點被點擊,這應該是簡單的:

$("#dialog").dialog({ 
    autoOpen: true, 
    buttons: [ 
     { 
      text: "Ok", click: function() { 
       $(this).dialog("close"); 
       $('#DefaultCallFrom1').focus(); 
      } 
     } 
    ] 
}); 

FIDDLE

+0

我需要做的它在OK按鈕上執行一些功能後點擊確定,點擊 – DotnetSparrow

+0

也是,我在上面添加了關閉功能代碼到我的對話框,並添加了一個名爲close的新按鈕,並且點擊它並沒有關閉對話框..我想因爲po小狗因爲這次焦點呼叫而重新出現。 – DotnetSparrow

+0

謝謝但如果autoOpen爲false,並且點擊$('#DefaultCallFrom1')打開#dialog?在這種情況下,對話框將不會因爲循環而關閉... – DotnetSparrow