<ItemTemplate>
<tr>
<asp:LinkButton ID="btnID" runat="server"
ToolTip='The calculated IDs are: ' OnCommand="showIds"
CommandArgument='<%# Convert.ToInt32(Eval("Year")) + "," +
Convert.ToInt32(Eval("Month")) %>'>
<%# Convert.ToInt32(Eval("Count")) - Convert.ToInt32(Eval("LittleCount"))%>
</asp:LinkButton>
</tr>
</ItemTemplate>
您可以注意到工具提示文本是静态的。在后面的代码中,每次单击上面的按钮(protected void showIds(object sender, CommandEventArgs e) { .... }
)作为List<ExpressionListDictionary>
时,我会计算并得到一些整数(ID)。 (asp:LinkButton包含在asp:ListView中)
我想要做的是将工具提示更改为动态工具提示,将所有已获取的ID包含为链接。 (像这样:http://jsfiddle.net/IrvinDominin/jLkcs/5/ - 但在我的情况下,我首先需要点击按钮来计算ID,然后我需要从代码中更改工具提示文本,因为它需要显示相应的ID,作为链接,如果可能的话)
我怎样才能做到这一点?
答案 0 :(得分:5)
如果你有一个类(或id或东西)来识别按钮,你可以创建一个jQuery文档就绪函数,用ids将工具提示更改为包含id的链接。 我修改了你的小提琴:http://jsfiddle.net/jLkcs/545/
$(document).ready(function () {
$(".myLinkButton").each(function() {
createlink(this);
});
});
function createlink(obj){
var ids= $(obj).attr('title');
var linkHtml="<a href='javascript:alert(" + ids + ")'>link</a>"
$(obj).attr('title',linkHtml);
}
答案 1 :(得分:3)
为什么不在回发期间简单地调整代码隐藏中的工具提示?
<location path="HomeController/Index">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>
答案 2 :(得分:3)
如果CommandEventArgs CommandName与您定义的
相等,则可以设置发件人属性public void LinkButton_Command(Object sender, CommandEventArgs e)
{
if (e.CommandName.Equals("showIds"))
{
//
}
}
这是一个工作示例,这将起作用,不计算使用哪个用户控件LinkButton:
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : Page
{
public string btnNoTooltip = "No IDs are calculated";
public string btnTooltip = "The calculated IDs are:";
protected void Page_Load(object sender, EventArgs e)
{
}
public void LinkButton_Command(Object sender, CommandEventArgs e)
{
if (e.CommandName.Equals("LinkButtonOrder"))
{
LinkButton lkTrigger = (LinkButton)sender;
if (lkTrigger.ToolTip.Equals(btnNoTooltip))
{
lkTrigger.ToolTip = btnTooltip + " " + e.CommandArgument;
}
else
{
lkTrigger.ToolTip += " " + e.CommandArgument;
}
Random random = new Random();
lkTrigger.CommandArgument = random.Next(0, 100).ToString();
Label1.Text = "Triggered: " + e.CommandName + " with Argument " + e.CommandArgument;
}
}
}
标记:
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<h3>LinkButton Command Event Example</h3>
<asp:LinkButton id="LinkButton1"
Text="Order Item Here"
CommandName="LinkButtonOrder"
ToolTip='No IDs are calculated'
CommandArgument="01"
OnCommand="LinkButton_Command"
runat="server"/>
<br />
<asp:LinkButton id="LinkButton2"
Text="Or Order Item Here"
CommandName="LinkButtonOrder"
CommandArgument="02"
ToolTip='No IDs are calculated'
OnCommand="LinkButton_Command"
Runat="server"/>
<br />
<br />
<asp:Label id="Label1" runat="server"/>
<asp:PlaceHolder id="plhInjectId" runat="server" Visible="false"></asp:PlaceHolder>
</asp:Content>
答案 3 :(得分:2)
您可以使用jquery在页面上生成工具提示。
将mouseenter事件绑定到jquery的类ShowHyperlinkOnHover document.ready函数,这将动态生成工具提示。然后将显示鼠标悬停工具提示。
# Uncomment this line to define a global platform for your project
platform :ios, "8.0"
def shared_pods
pod 'SocketRocket'
pod 'AFNetworking'
pod 'DateTools'
pod 'Spotify-iOS-SDK'
end
target "AppName" do
shared_pods
end
target "AppNameTests" do
shared_pods
end