2013-09-25 96 views
0

一个简单的问题,但我不能找到答案,我有一个jQuery的对话框:上一个jQuery对话框触发按钮单击事件

$(function() { 
    $('#my-dialog').dialog({ 
     modal: true, height: 'auto', width: 'auto', resizable: false, autoOpen: false, 
     title: "@HMSW.Resources.Persona.Res_Strings.BuscaPersona", 
     buttons: { 
      "Accept": function() { 
       $($(this).find('#target').val()).val($(this).find('#idPersonaSeleccionada').val()); 
       $(this).dialog("close"); 
      }, 
      "Cancel": function() { 
       $(this).dialog("close"); 
      } 
     }, 
    }); 

但我的问题是:我怎么能触发按钮OK(或任何)从对话框?该对话框包含一个jqGrid的,所以在jqGrid的的ondoubleclickrow事件中,我需要触发Accept按钮

+0

创建一个小提琴请 – SarathSprakash

+0

'ondblClickRow :function(){$('#my-dialog')。find('button')。eq(0).trigger('click'); }' – Ohgodwhy

+0

不能正常工作:( – EricGS

回答

0

试试这个:

$("button span").filter(function(){ 
    return $(this).text() == "Accept"; 
}).click(); 

js.fiddle:example

+0

可以工作,但是如果我在我的dom上有任何其他“接受”按钮? – EricGS

+0

您可以将选择器缩小到“.ui-对话框按钮跨度”,因此您可以确定选择的按钮生成的$ .dialog()。我想一次只会有一个对话框打开。 – tomieq

+0

不知道,这将是一个对话框重复使用很多次,它可能是从另一个对话框打开,我浪费在somthing like:$(this).closest('。ui-dialog')。find('。ui-button:contains(“@ Res_Button.Accept”)')。click();但是我不知道这是否可行 – EricGS

相关问题