【问题标题】:Disabling asp validation controls in a hidden Panel在隐藏的面板中禁用 asp 验证控件
【发布时间】:2012-02-25 08:09:29
【问题描述】:

在我的 asp 页面中,我使用了 2 个 asp 面板控件。第二个面板 不可见,因为它的样式属性设置为隐藏。面板 2 通过更改样式属性的 javascript 代码显示根据面板 1 中 checkbox 的值可见。 在回发时,虽然 panel 2 被隐藏,但它的 asp 验证弹出并且回发没有发生。我试图通过 javascript 禁用服务器 controls,但它不起作用。

有人可以帮我吗?

function DisablePanel() {
var div_to_disable =document.getElementById('<%=Panel1.ClientID%>').getElementsByTagName("input");
var children = div_to_disable;
for (var i = 0; i < children.length; i++) {
children[i].disabled = true;
    };
}
function EnablePanel() {
var div_to_disable = document.getElementById('<%=Panel1.ClientID     %>').getElementsByTagName("input");
    var children = div_to_disable; //.childNodes;
    for (var i = 0; i < children.length; i++) {
        children[i].disabled = false;
    };
}
   function ShowPanel2() {
   var panel = document.getElementById('<%=Panel2.ClientID %>');
   if (panel.style.visibility == 'hidden') {
       EnablePanel();
       panel.style.visibility = 'visible';
   }
   else { DisablePanel();
       panel.style.visibility = 'hidden';
} 

【问题讨论】:

    标签: javascript


    【解决方案1】:

    这些帖子可能会对您有所帮助;基本上你只需要在禁用方法调用之后调用 ASP.NET 内置的 JS 函数“ValidatorEnable”

    Enable/disable asp.net validator controls within a specific "ValidationGroup" with jQuery?

    http://geekswithblogs.net/jonasb/archive/2006/08/11/87708.aspx

    【讨论】:

    • 是否意味着禁用面板中的所有控件不会禁用同一面板中的asp验证控件,我们必须显式禁用它?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-16
    • 2012-07-05
    • 1970-01-01
    • 2013-12-31
    • 2023-03-02
    • 2012-07-19
    • 1970-01-01
    相关资源
    最近更新 更多