我通过代码将工具提示添加到ASP.NET日历控件:
string newToolTip = string.Format(@"<div class='tooltip'><div class='toolHead'>{0}</div><div class='toolDate'>{1}-{2}</div></div>",sEvent.Title, sEvent.FromDate, sEvent.ToDate);
e.Cell.ToolTip = newToolTip;
e.Cell.Attributes.Add("OnClick", string.Format("javascript:__doPostBack('Karl Ender','{0}')", sEvent.Title));
其中“e”是DayRenderEventArgs:
Calendar.DayRender += new DayRenderEventHandler(SpecialDayRender);
在第一次加载页面时一切正常,产生以下(正确的)html代码:
<td title="" class="calendarcell" align="center" onclick="javascript:__doPostBack('Karl Ender','Hallo Welt')" style="color:White;background-color:Silver;width:14%;">7<div class="tooltip"><div class="toolHead">Hallo Welt</div><div class="toolDate">11/7/2012-5/9/2013</div></div></td>
当我在日历控件中更改月份(或执行其他部分回发)时,Html-Code会突然出现晕眩:
<td title="<div class='tooltip'><div class='toolHead'>Hallo Welt</div><div class='toolDate'>11/7/2012-5/9/2013</div></div>" class="calendarcell" align="center" onclick="javascript:__doPostBack('Karl Ender','Hallo Welt')" style="color:White;background-color:Silver;width:14%;">7</td>
因此,工具提示会呈现为该单元格的“标题” - 属性
有任何线索吗?
(日历在updatePanel内)
调试代码时,单元格的Title-Attribute永远不会被那个奇怪的内容填充