1

我正在使用 jquery ui 对话框。在对话框中我有 1 个保存按钮,当用户单击保存按钮回调中的保存按钮时,我将其禁用。我的代码:

$("#Form1").dialog({
    width: 500, autoOpen: false, modal: true, resizable: false, draggable: false,
    buttons: {
        "Save": function (event, ui) {
            $(event.currentTarget).button({ disabled: true });
             ... .
             ....
         }
    }
    , beforeClose: function () {
        //here how can i enable the save button
    }
});

现在我的问题是,当用户再次打开对话框时,保存按钮仍然被禁用,这就是为什么我想在对话框beforeClose事件中启用按钮。我怎样才能做到这一点?

4

2 回答 2

1

您调用对话框的元素被包裹在父元素中,因此可以添加标题栏、按钮等。所有按钮都有类ui-button

这应该做你需要的

beforeClose:function(){
   $(this).parent().find('.ui-button').button({ disabled: false });

}
于 2012-10-30T11:56:35.650 回答
0

您可能会发现通过以下方式启用和禁用按钮更容易:

btn_save = $('#Form1').parent().find(':button:contains("save")');

//disable the save button
$(btn_save).prop('disabled', true).addClass('ui-state-disabled');

//enable the save button
$(btn_save).prop('disabled', false).removeClass('ui-state-disabled');

添加的 css 类将为按钮提供禁用 css 样式。另请注意,:contains选择器区分大小写。

于 2012-10-30T11:58:33.150 回答