2013-11-07 4 views
2

У меня есть filedset и легенды внутри, что с «текстом», и внутри этого FIELDSET я есть сеткаКак показать и скрыть HTML FIELDSET А также указан легенда текст из Asp.Net кодекса за

У меня есть 2 вопроса

  1. Как показывать? скрыть html filedset из кода позади, я попробовал следующий способ показать и скрыть поле

    a) установить runat = "server" - но он не работал b) я вставил набор полей внутри панели asp.net и попытался показать/скрыть панель, она также не работал

  2. Как установить текст для легенды из кода позади, то есть я хочу установить «какой-то текст» + Value_Form_Code за AS leged текст

Примечание: Я использую «Rad Ajax Manager» и Rad Ajax LoadingPanel

ответ

4
<asp:Panel ID="Panel1" runat="server" >     
<fieldlset> 
<legend><asp:Label id="Label1" runat="server" /></legend> 
</fieldset> 
</asp:Panel> 

Как показать/скрыть html filedset из кода позади?

Panel1.Visible = true; // or false 

Как установить текст легенду из кода позади, то я хочу, чтобы установить «некоторые тексты» + Value_Form_Code За AS легенды текста?

Label1.Text = String.Format("some text {0}",Value_Form_Code); 
0

1: Я думаю, вы должны положить Fieldset внутри осины: панель, а затем скрыть/показать панель от кода-позади. Это автоматически скроет/покажет ваш набор полей.

2: Что касается установки текста легенды, просто установите легенду с помощью runat = "server" и установите код из codebehind.

0

При установке в «GroupingText» свойства осины: панель управления тогда Он будет оказывать как «FIELDSET» тега в HTML и любой набор в значении имущественной «GroupingText» отображается как тег <legend>.

Я думаю, что следующий код поможет вам в соответствии с вашими требованиями.

Для стороны дизайна,

<asp:Panel runat="server" ID="Panel1" GroupingText="This is legend"> 
     <h4>Your Content Goes Here</h4> 
    </asp:Panel> 
    <br /> 
    <asp:Button ID="btnHidePanel" runat="server" Text ="Hide FieldSet" onclick="btnHidePanel_Click" /> 
    <asp:Button ID="btnShowPanel" runat="server" Text ="Show FieldSet" onclick="btnShowPanel_Click" Visible="false" /> 

Для Code-за попробовать это,

protected void btnHidePanel_Click(object sender, EventArgs e) 
     { 
      Panel1.Visible = false; 
      btnHidePanel.Visible = false; 
      btnShowPanel.Visible = true; 
     } 

     protected void btnShowPanel_Click(object sender, EventArgs e) 
     { 
      Panel1.Visible = true; 
      Panel1.GroupingText = "This Legend Text Has been Changed"; 
      btnHidePanel.Visible = true; 
      btnShowPanel.Visible = false; 
     } 
2

она также должна быть возможность добавить ID и runat="server" к вашему Fieldset и управления видимостью через фоновым кодом , Просто не забудьте написать «ID» в верхних буквах.

<fieldset ID="myFieldset" runat="server"> 

Вы не сможете контролировать текст легенды, если только вы не дадите ему идентификатор и сам runat. Но видимость абсолютно возможна.

Поверхность этого подхода: отсутствие ненужной разметки html (панель будет дополнительным div). Недостаток: наборы полей на самом деле не asp-controls, поэтому некоторые вещи могут дать вам исключения, поэтому используйте внимательно.

Я использую этот подход только в том случае, если я хочу, чтобы средства управления вообще не отображались в определенных случаях (видимость делает это).