首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WebForm中获取JS错误(for - event.srcElement.id)

问在WebForm中获取JS错误(for - event.srcElement.id)
EN

Stack Overflow用户
提问于 2010-08-03 00:56:12
回答 2查看 258关注 0票数 0

我正在构建一个包含占位符的动态用户控件(ascx)。在占位符内部,将有n个表。在每个表中,在其中一个单元格中,我有一个链接按钮,如下所示。

新建lnkButton = HyperLink HyperLink();lnkButton.ID = "lnkButton_“+ ID.ToString();lnkButton.Text = tstText;lnkButton.NavigateUrl = "javascript:JS_Click();";

我必须在点击链接按钮时调用JS函数(无回发)。

在JS函数中,我必须获取调用该JS函数的控件的id。在本例中,它将是链接按钮。我在JS函数中编写了以下代码:

var ctrl = event.srcElement.id;

但是我在javaScript中得到了'Object Required‘错误。

其他几件事:这个用户控件将加载到default.aspx页面和我用default.aspx编写的JS函数中。

我不确定为什么这不起作用。我使用的是IE6/7,VS 2005。是否有其他可用的函数或方法来获取srcElement.id。请帮帮忙。

EN

回答 2

Stack Overflow用户

发布于 2010-08-03 01:02:03

尝试在调用该方法时传递this

代码语言:javascript
复制
lnkButton.NavigateUrl = "javascript:JS_Click(this);";

然后,您可以在JS_Click事件中编写以下代码

代码语言:javascript
复制
function JS_Click(obj)
{
    alert("Now I have my object " + obj.id);
}
票数 3
EN

Stack Overflow用户

发布于 2010-08-03 01:42:15

另一种选择是使用jQuery并连接到链接按钮上的click事件。

将CssClass属性添加到要创建的LinkButton中:

代码语言:javascript
复制
HyperLink lnkButton = new HyperLink(); 
lnkButton.ID = "lnkButton_" + ID.ToString(); 
lnkButton.Text = tstText; 
lnkButton.CssClass = "linkButton";

然后在你的ASPX页面中编写下面的JS/ JQuery:

代码语言:javascript
复制
$(document).ready(function()
{
    $('.linkButton', '#userControlID').click(function(e)
    {
        alert('You clicked linkbutton with ID ' + e.target.id);
    });
});

在上面的例子中,每个链接按钮都有class="linkButton“,它们包含在你的用户控件中,ID=是”userControlID“。

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

https://stackoverflow.com/questions/3389969

复制
相关文章

相似问题

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