【问题标题】:enable or disable a div in asp.net在 asp.net 中启用或禁用 div
【发布时间】:2017-03-22 09:49:22
【问题描述】:

你好,有谁知道如何启用和禁用一个洞 div 内容。我有一个 div 有一个 celendar 和文本框以及下拉列表等...我希望当用户按下按钮时 div 内的内容被禁用,请注意我不想让它们不可见但启用或禁用.现在我知道我可以让每个文本框日历等单独禁用,但我想知道是否有办法让洞 div 内容禁用,从而节省一些行代码和时间。谢谢这里是 div 内容的代码:

 <asp:Calendar ID="mtcDataMR" runat="server" onselectionchanged ="mtcDataMR_SelectionChanged" ></asp:Calendar>
       <br />
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <asp:TextBox ID="txtData" runat="server" ReadOnly="True"></asp:TextBox>
      <br />
     </fieldset>
     <fieldset>
          <legend>Filtrar Marcações</legend>
          <br />
          Nome de Utente<br />
     <asp:CheckBox ID="chkFiltroUtente" text=" " runat="server" AutoPostBack="true" OnCheckedChanged="chkFiltroUtente_CheckedChanged" /><asp:TextBox ID="txtFiltrarNomeUtente" runat="server" AutoPostBack="true" OnTextChanged="txtFiltrarNomeUtente_TextChanged" ReadOnly="True" ></asp:TextBox>
          <br />
          <br />
      <fieldset>
           <legend>Tipo de Marcações a Mostrar</legend>
              <asp:RadioButton ID="rdbConsultas" text="Consultas" runat="server" GroupName="rdb" AutoPostBack="true" OnCheckedChanged="rdbTratamentos_CheckedChanged" />
              <asp:RadioButton ID="rdbTratamentos" text="Tratamentos" runat="server" GroupName="rdb" Autopostback ="true" Checked="True" />
      </fieldset>
         <br />
         Nome de Especialista<br />
          <asp:CheckBox ID="chkFiltroEspecialista" Text=" " runat="server" /> <asp:DropDownList runat="server" ID="cbxFiltroEspecialista" OnSelectedIndexChanged ="cbxFiltroEspecialista_SelectedIndexChanged" AutoPostBack="true" /> <br />
         Local de Tratamento<br />
          <asp:CheckBox ID="chkFiltroLocal" Text=" " runat="server" /> <asp:DropDownList runat="server" ID="cbxLocal" OnSelectedIndexChanged ="cbxFiltroLocal_SelectedIndexChanged" AutoPostBack="true" /> <br />
         Hora de Inicio<br />
          <asp:CheckBox ID="chkFiltroHora" Text=" " runat="server" /> <asp:DropDownList runat="server" ID="cbxFiltroHora" OnSelectedIndexChanged ="cbxFiltroHora_SelectedIndexChanged" AutoPostBack="true" /> <br />
         <fieldset>
             <legend> Estados a Apresentar</legend>
             <asp:CheckBox ID="chkMRSuspensas" runat="server" text="Mostrar Marcações Suspensas" AutoPostBack ="true" OnCheckedChanged="chkMRSuspensas_CheckedChanged"></asp:CheckBox>
             <br />
             <asp:CheckBox ID="chkMRCanceladas" runat="server" text="Mostrar Marcações Canceladas" AutoPostBack="true" OnCheckedChanged="chkMRSuspensas_CheckedChanged"></asp:CheckBox>
         </fieldset>
         <asp:Button text="Limpar Filtros" ID="btnFiltroClear" runat="server" OnClick="btnFiltroClear_Click"  />
      </fieldset>

  </div>

顺便说一句,我当前使用的是(点击按钮)

 mtcDataMR.Enabled = False
        txtData.Enabled = False
        chkFiltroUtente.Enabled = False
        rdbConsultas.Enabled = False
        rdbTratamentos.Enabled = False
        chkFiltroEspecialista.Enabled = False
        chkFiltroLocal.Enabled = False
        chkFiltroHora.Enabled = False
        chkMRSuspensas.Enabled = False
        chkMRCanceladas.Enabled = False
        btnFiltroClear.Enabled = False
        cbxFiltroEspecialista.Enabled = False
        cbxLocal.Enabled = False
        cbxFiltroHora.Enabled = False

但正如你所见,代码行太多了。

【问题讨论】:

  • 可能重复 stackoverflow.com/questions/15555295/… 。在链接中,您可以观察如何仅在客户端执行此操作,而无需操作后端。
  • 我想以编程方式在网络表单(服务器端)中启用或禁用
  • 据我所知,您可以将所有控件放在 Panel 控件中,然后 Enabled 属性适用于其中的所有内容。第二个选项是 div,我的问题是你的“div”是否有 runat="server" 属性,所以你可以在后面的代码中使用它?

标签: asp.net vb.net


【解决方案1】:

您可以启用或禁用 div。在 div runat="server" 和 id="a id name" 中写入。然后您可以访问 .cs 页面中的 div id。现在您可以启用或禁用。

示例:
.aspx 页面:

<div runat="server" id="divSearch"> {here you write} </div>

.aspx.cs 页面:

divSearch.enable = false; OR divSearch.enable = true;

【讨论】:

  • 嗨,我按照你说的做了,但是当我转到 .cs 页面并放置 divsearch.enable = false 时,它​​说“未声明 divsearch 由于其保护级别可能无法访问”
  • 可能是因为我的 aspx.designer.vb 不再更新了吗?如果是因为我完成了 xD
  • 你用vb吗,我写代码c#。我认为你可以在vb中做到这一点。请尝试。
  • vb中的代码相同,但没有“;”最后,但我的问题是设计器文件不久前停止更新,每次放置新控件 xD 时我都必须手动更新它,但问题是我不知道如何根据 div 更新设计器。 :\
  • 我不久前提出了另一个问题,询问是否有人知道如何强制它更新但没有人回答:|我在网上看到的所有教程都来自 vs 2003 - 2005,我使用的是 2015,所以你永远不会幸运:P
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-17
  • 1970-01-01
相关资源
最近更新 更多