Why does ASP.Net RadioButton and CheckBox render inside a Span?

前端 未结 7 1390
一个人的身影
一个人的身影 2020-12-08 00:12

I would expect this:




        
7条回答
  •  北荒
    北荒 (楼主)
    2020-12-08 00:45

    the best way i think is this:

    
        public class HtmlTextWriterNoSpan : HtmlTextWriter
        {
            public HtmlTextWriterNoSpan(TextWriter textWriter) : base(textWriter)
            { 
            }
    
            protected override bool OnTagRender(string name, HtmlTextWriterTag key)
            {
                if (name == HtmlTextWriterTag.Span)
                {
                    return false;
                }
    
                return base.OnTagRender(name, key);
            }
        }
    
    

    to use it in custom control:

    
        protected override void Render(HtmlTextWriter writer)
        {
            writer = new HtmlTextWriterNoSpan(writer);
            base.Render(writer);
            // HERE MORE CODE
        }
    
    

提交回复
热议问题