如何从代码隐藏中禁用 JqueryUI 对话框按钮 ASP.NET

本文关键字:对话框 JqueryUI 按钮 ASP NET 代码 隐藏 | 更新日期: 2023-09-27 17:56:32

我正在做一个项目,我需要从代码隐藏中禁用jquery ui对话框按钮。我的代码是:

var viewPopup = $('#popupPanel').dialog({
            modal: true,
            autoOpen: false,
            height: 580,
            width: 800,
            appendTo: $('form:first'),
            buttons: [{
                id:"jqueryBtn",
                text: "Submit",
                click: function () {
                    $("#<%=aspnetBtn.ClientID%>").click();
                }
            }]
        });

我需要从代码隐藏中禁用jqueryBtn。我知道这是客户端-服务器问题。我该怎么做?提前致谢:)

如何从代码隐藏中禁用 JqueryUI 对话框按钮 ASP.NET

创建一个asp:HiddenField作为标志。在代码隐藏上设置标志。代码运行后,将有一个回发,之后是 DOMReady。在 DOMReady 中检查标志并禁用/启用按钮。

不是 100% 确定你想要实现什么但是,如果要禁用服务器端的按钮,则有几个选项:

  1. 使按钮成为 asp.net 服务器控件,如使用 Tag,然后将逻辑放在代码后面

  2. 在客户端有一个禁用按钮函数,然后使用 ScriptManager 在服务器端调用该函数。注册客户端脚本块

你可以使用 jquery 对话框事件打开

var viewPopup = $('#popupPanel').dialog({
        modal: true,
        autoOpen: false,
        height: 580,
        width: 800,
        appendTo: $('form:first'),
        buttons: [{
            id:"jqueryBtn",
            text: "Submit",
            click: function () {
                $("#<%=aspnetBtn.ClientID%>").click();
            }
        }],
        open: function() {
           $('#jqueryBtn').button("disable");
        }
   });

这是一个演示