1

2 つのラベルと 2 つのテキスト ボックスと 1 つのボタンが表示されています。

ページが読み込まれるNameButton(最初に表示されます)。後で をクリックすると、 とButtonを表示する必要がage labelありtextboxます。これどうやってするの ?

<ol>
     <li>
          <asp:Label runat="server" AssociatedControlID="Name">
             User name
          </asp:Label>
          <asp:TextBox runat="server" ID="Name" Width="167px" />
          <asp:Button ID="Button1" runat="server" Text="Button" />
     </li>                           
     <li>
          <asp:Label runat="server" AssociatedControlID="age">age</asp:Label>
          <asp:TextBox runat="server" ID="age" TextMode="age" Width="240px" />
     </li>                         
</ol>

ボタンを押すコード

protected void Button1_Click(object sender, EventArgs e)
{

}
4

5 に答える 5

6

サーバー側でlabel/textboxVisibleプロパティを設定できます。または、サーバーへのポストバックを回避するためにTrue使用できます。JavaScript

OnClientClickあなたに追加button

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="ShowLabel();"/>

JavaScriptページで関数を宣言します。

<script type="text/javascript">
    function ShowLabel() {
      // Note that the client ID might be different from the server side ID
      document.getElementById('lblAge').style.display = 'inherit';
    }
</script>

Label表示スタイルをnone最初に設定する必要があります。

<asp:Label ID="lblAge" style="display: none;" runat="server" AssociatedControlID="age">age</asp:Label>
于 2013-01-22T09:50:18.133 に答える
5

以下のコードを試してください:

Visible要件に応じて、コントロールのプロパティをTrueまたはFalseに設定する必要があります。デフォルトでは、すべてのコントロールはページに追加されるたびに画面に表示されます。次のことを行う必要があります。

  1. TextMode="age"年齢タイプのサポートされているテキストモードがないため、削除する必要があります。
  2. コードビハインドでコントロールサーバー側にアクセスする場合は、コントロールのIDを定義する必要があります。したがって、Ageテキストボックスに対応して配置するラベルのIDを定義します。

デフォルトでは、以下のコードを使用しても、年齢ラベルとテキストボックスは表示されません。

      <asp:Label ID="lblAge" runat="server" AssociatedControlID="age" Visible="false">age</asp:Label>
      <asp:TextBox runat="server" ID="age" Width="240px"  Visible="false"/>

コードビハインド:ボタンをクリックした後、年齢ラベルをクリックすると、以下のコードを使用してテキストボックスが表示されます。

protected void Button1_Click(object sender, EventArgs e)
    {
        lblAge.Visible = true;
        age.Visible = true;
    }
于 2013-01-22T09:45:36.007 に答える
2

最初idに要素に追加し、visiblefalseを設定します

<asp:Label runat="server" AssociatedControlID="age" Visible="false" Id="lbl1">age</asp:Label>
<asp:TextBox runat="server" ID="age" TextMode="age" Width="240px" Visible="false" /> 

ボタンクリックイベントセットvisibletrue

protected void Button1_Click(object sender, EventArgs e)
{
    lbl1.Visible = True;
    age.Visible = True;
}
于 2013-01-22T09:42:32.323 に答える
1

これがasp.netの基本的な概念です。コントロールのvisibleプロパティを使用できます。

  1. TextMode列挙が間違っています。Textbox.TextModeTextModeのAge列挙はありません

<li> <asp:Label runat="server" AssociatedControlID="age" id="lblAge">age</asp:Label> <asp:TextBox runat="server" ID="age" TextMode="age" Width="240px" /> </li>

コードビハインド

protected void Button1_Click(object sender, EventArgs e)
{
  lblAge.Visible=true;
  age.Visible=true;
}
于 2013-01-22T09:42:15.420 に答える
1
    protected void Page_Load(object sender, EventArgs e)
    {
        NameLabel.Visible = false;
        NameBox.Visible = false;
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        NameLabel.Visible = true;
        NameBox.Visible = true;
    }
于 2014-11-13T06:17:13.523 に答える