我有一个下拉列表,我想为下拉列表项目添加工具提示。 我尝试了下面的代码,但它不起作用;工具提示下拉列表项目
for(int d=0;d<drpID.Items.Count;d++)
{
drpID.Items[d].Attributes.Add("title", drpID.Items[d].Value);
}
任何人都可以帮助我吗?
我有一个下拉列表,我想为下拉列表项目添加工具提示。 我尝试了下面的代码,但它不起作用;工具提示下拉列表项目
for(int d=0;d<drpID.Items.Count;d++)
{
drpID.Items[d].Attributes.Add("title", drpID.Items[d].Value);
}
任何人都可以帮助我吗?
试试这个;
public void Tooltip(ListControl lc)
{
for (int d = 0; d < lc.Items.Count; d++)
{
lc.Items[d].Attributes.Add("title", lc.Items[d].Text);
}
}
您应该使用.Text
财产提示,而不是为.Value
。
此链接查阅:http://www.dotnetspider.com/resources/5099-Tool-tip-for-DropDownList-ASP-NET.aspx
尝试下面的代码:
foreach (ListItem item in drpID.Items)
{
item.Attributes.Add("Title", item.Text);
}
你应该试试这个
protected void ddlDetails_DataBound(object sender, EventArgs e)
{
DropDownList ddl = sender as DropDownList;
if(ddl!=null)
{
foreach (ListItem li in ddl.Items)
{
li.Attributes["title"] = li.Text;
}
}
}
我知道这个线程关于一个数据绑定控件,但在你实际上很难在aspx页面编码的列表项值罕见的情况下,我只加了
<asp:ListItem Id="liNumberOne" Runat="server" title="My nifty help text" />
属性的列表项标签本身和它的工作就好了。当然,我收到了一个抱怨,认为这不是一个有效的属性,但当页面呈现时,它出现了,然后它就成为一个有效的属性。
我刚刚实施了一个程序化填充DropDownList工具提示。我发现title属性被自动设置为Text属性,我无法覆盖它,即使在PreRender中也是如此。
这个线程没有任何建议,我最终被迫使用jQuery方法。
创建列表项当我设定的提示文本
ListItem item = new ListItem("Name", "Value");
item.Attributes.Add("tooltip", tooltip);
ddl.Items.Add(item);
自定义属性,那么火之下有启动脚本
function SetTooltip() {
jQuery('#<%=ddl.ClientID %> option').each(
function() {
jQuery(this).attr('title', jQuery(this).attr('tooltip'));
}
);
}
漂亮是不是方法。但它的工作。
@SandraDsouza它应该工作。你是怎么尝试的?你把你的下拉列表作为参数吗? – 2013-04-08 06:26:01
非常感谢。有效。非常感谢 – Shanna 2013-04-08 06:27:49
我在发送参数时犯了一个错误。再次感谢 – Shanna 2013-04-08 06:28:35