首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用javascript在LinkButton模式下触发BulletedList?

如何使用javascript在LinkButton模式下触发BulletedList?
EN

Stack Overflow用户
提问于 2008-10-08 13:00:35
回答 3查看 2.3K关注 0票数 2

我有一个BulletedList in asp.net,它被设置为DisplayMode="LinkButton“。我想从javascript触发第一个“子弹”,这能做到吗?如果是,怎么做?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2008-10-08 15:25:50

假设你有BulletedList

代码语言:javascript
复制
<asp:BulletedList runat="server" ID="MyLovelyBulletedList" DisplayMode="LinkButton">
    <asp:ListItem Text="My Lovely Text 1" />
    <asp:ListItem Text="My Lovely Text 2" />
</asp:BulletedList>

..。然后,您可以触发"onclick“事件(跨浏览器):

代码语言:javascript
复制
var links = document.getElementById('<%= MyLovelyBulletedList.ClientID %>').getElementsByTagName('a');

var targetLink = links[0];

if (targetLink.fireEvent)
{
    // IE
    targetLink.fireEvent("onclick");
}
else if (targetLink.dispatchEvent)
{
    // W3C
    var evt = document.createEvent("MouseEvents");

    evt.initMouseEvent("click", true, true, window,
        0, 0, 0, 0, 0, false, false, false, false, 0, null);

    targetLink.dispatchEvent(evt);
}
票数 3
EN

Stack Overflow用户

发布于 2008-10-09 02:46:27

类似于Alexander所指出的,但您可以使用jQuery触发事件,并依赖他们的跨浏览器支持,而不是自己维护它。

代码语言:javascript
复制
$('#<%= MyLovelyBulletedList.ClientID %>')
    .contents()
    .find('a:first')
    .trigger('click');
票数 3
EN

Stack Overflow用户

发布于 2009-02-05 13:12:20

经过大量测试,似乎唯一依赖的方法是手动触发__doPostBack-脚本,如下所示:

代码语言:javascript
复制
__doPostBack('MyLovelyBulletedList', '0');

正如Alexander Gyoshev所建议的

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/182602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档