1

我有一个 asp.net 日历。在日历的 DayRender 事件中,我想将 html 呈现为工具提示。

e.Cell.ToolTip= HttpUtility.HtmlEncode("add<BR>peek") 

但它不起作用。如何在浏览器中呈现为 html.But 它呈现为

"asdsa&lt;BR&gt;peek"

编辑:我以另一种方式尝试过。

Label b = new Label();
b.Visible = false;
b.Text = "add<BR>peek";
e.Cell.Controls.Add(b); 

显示很好。但我想在日历日期上显示标签。我怎样才能做到这一点?谁能帮我。提前致谢。

4

1 回答 1

1

实现这一点的最简单方法是使用 jQuery。您需要使用 css 类使包含单元格和标签可识别为不显眼的 javascript。然后你可以创建一个函数,当单元格悬停在它上面时,它将找到标签并显示它,然后在鼠标移开时隐藏:

将以下行附加到您已经拥有的服务器端逻辑中:

b.CssClass = "js-tooltip";
e.Cell.CssClass = "js-tooltip-container";

然后您的 html 应该看起来像(您不必编写这部分代码,它是您后面代码的结果):

<td class="js-tooltip-container">
    <label class="js-tooltip" style="display:none;">add <br /> peek</label>
</td>

然后你需要添加以下 jQuery:

<script type="text/javascript">
$(function(){
    $(".js-tooltip-container").hover(function(){
        $(this).find(".js-tooltip").show();
    }, function(){
        $(this).find(".js-tooltip").hide();
    });
});
</script>

javascript 使用jQuery 悬停功能。这都是样板的东西,所以如果你想要更健壮和可定制的东西,我会考虑使用这里建议的插件之一。

于 2012-09-12T11:48:10.980 回答