如何在不使用javascript的情况下自动设置alt atribute = asp.net中图片标记的文件名?
<img src="/a/b/c/xxx.jpg" />
到
<img src="/a/b/c/xxx.jpg" alt="xxx.jpg" />
我认为可能是IIS上的重写模块?或者可能以某种方式更改基本Image类以发出不同的html?
任何想法?
谢谢
答案 0 :(得分:1)
如果您愿意将runat="server"
属性添加到您的img标记中,那么在您的代码中,您可以遍历页面上的控件列表以及所有img
标记,更新alt
属性。我在没有测试的情况下写了这个,所以可能需要进行一些小的调整。
private void UpdateImgTags<T>(ControlCollection controlCollection)
where T : Control
{
foreach (Control control in controlCollection)
{
if (control is T) {
string filename = (T)control.Attributes["src"];
filename = IO.Path.GetFileName(filename);
(T)control.Attributes.Add("alt",filename);
}
}
}
调用方法:
UpdateImgTags<HtmlImage>(Page.Controls)