0

这是我的功能:

function confirmFamilyMemDelete()
{
  $('#dialog').attr('title', 'Warning').text('Are you sure?').dialog({ buttons:
  [{
    text: 'Yes',
    click: function ()
    {
        $('#MainContent_cph_btnConfirmDelete').click();
        $(this).dialog('close');
        alert('Hello');
    }
},
{
    text: 'No',
    click: function ()
    {
        $(this).dialog('close');
    }
 }
 ]
  });

  return false;
}

我有一个非常奇怪的问题。在我的 aspx 页面中,有一个按钮在呈现后获取 id 'MainContent_cph_btnConfirmDelete'。如果在 jQuery UI 对话框中单击 Yes 按钮,我想单击它。但是,我做不到。它只是跳过该命令并警告“你好”。这意味着我的“是”按钮中的其余代码将被执行。如果我采取

 $('#MainContent_cph_btnConfirmDelete').click(); 

把它放在 return false 之前;按钮被点击。这是 jQuery 的一个已知问题吗,因为我想不出任何合乎逻辑的解释。如果是这样,解决方法是什么?

4

1 回答 1

1

这是我认为你需要的:

function confirmFamilyMemDelete()
{
  $('#dialog').attr('title', 'Warning').text('Are you sure?').dialog({ buttons:
  {
    "Yes": function ()
    {
        $('#MainContent_cph_btnConfirmDelete').trigger('click');
        $(this).dialog('close');
        alert('Hello');
    },
    "No": function ()
    {
        $(this).dialog('close');
    }
 }
  });
  return false;
}
于 2012-10-13T07:54:45.373 回答