Приветствия!Удаление атрибута класса CSS из тега в пользовательском контроле сервера
Я создал пользовательский класс кнопку, чтобы вынести следующее:
<span class="btnOrange">
<input type="submit" id="ctl00_MainContent_m_GoBack" value="Back" name="ctl00$MainContent$m_GoBack"/>
</span>
Однако это делает, как это вместо (обратите внимание на посторонний «класс» атрибут в теге INPUT,):
<span class="btnOrange">
<input type="submit" class="btnOrange" id="ctl00_MainContent_m_GoBack" value="Back" name="ctl00$MainContent$m_GoBack"/>
</span>
Моя пользовательская кнопка класса выглядит следующим образом:
[ToolboxData(@"<{0}:MyButton runat=server></{0}:MyButton>")]
public class MyButton : Button
{
public override void RenderBeginTag(HtmlTextWriter writer)
{
writer.AddAttribute(HtmlTextWriterAttribute.Class, this.CssClass);
writer.RenderBeginTag("span");
base.RenderBeginTag(writer);
}
public override void RenderEndTag(HtmlTextWriter writer)
{
writer.RenderEndTag();
base.RenderEndTag(writer);
}
}
Поскольку мне нужно только установить CLAS s для тега SPAN, можно ли не включать или исключать атрибут класса для тега INPUT?
К сожалению, объект-автор не имеет метода «RemoveAttribute» или тому подобного. И вызов writer.AddAttribute (HtmlTextWriterAttribute.Class, "") фактически создает два атрибута CLASS в теге INPUT; один с «btnOrange» в качестве значения, а другой с пустым значением. – Bullines 2008-10-14 15:12:32