首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >asp:树视图如何维护由于显示行而可见的图像的alt属性

asp:树视图如何维护由于显示行而可见的图像的alt属性
EN

Stack Overflow用户
提问于 2014-01-10 08:59:47
回答 1查看 432关注 0票数 2

我想要的是或者完全删除那些行图像,(甚至在源代码中没有显示),或者在其中放一些alt文本。alt文本不应该是空的.

代码语言:javascript
复制
<asp:TreeView ID="tvCategories" runat="server" ShowLines="true" ShowExpandCollapse="true" NodeWrap="true" ClientIDMode="Static" />

it is generating images for them like 

<img alt="" src="/WebResource.axd?d=dfVL09bUhBneFGh9D0vDj08RF3Nrn9hb0Lh74Ri0hqgqmkAuOeYNlcDnBs2UP4NuOmbnPWYc2_OLskPjZI7ZHoMPKIYGQVmcGAiYgA2&amp;t=635065079764912806">

我想要一些没有javascript的解决方案

我已经通过jquery在文档上放置了一些alt文本,但是有些爬虫仍然在加载之前将alt文本读取为空。

示例javascript是

代码语言:javascript
复制
$('#viewCategoriesForBlog img[alt=""]').attr('alt', 'category');

我正在使用asp.net 4.0 web表单。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-13 21:38:52

有点像黑客但不管怎样。

您将不再使用内置的TreeView,而是使用一个覆盖Render方法的自定义树视图。在这里,我首先以标准的方式呈现树内容,然后删除alt="" (您可以替换它而不是删除)。

代码语言:javascript
复制
public class CustomTreeView : TreeView
{
    protected override void Render( HtmlTextWriter writer )
    {
        StringBuilder sb = new StringBuilder();

        using ( StringWriter sw = new StringWriter( sb ) )
        using ( HtmlTextWriter tw = new HtmlTextWriter( sw ) )
        {
            base.Render( tw );

            sw.Flush();

            sb.Replace( "alt=\"\"", "" );

            writer.Write( sb.ToString() );
        }
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21039895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档