繁体   English   中英

Google Chrome中的用户控件中的元素未触发Javascript单击事件

[英]Javascript click event not firing on element in user control in google chrome

我有一个用户控件和其中的一个图像,我希望在单击它时执行一些javascript,在我的用户控件的Page_Load事件中添加以下内容:

imgCalendar.Attributes.Add("onclick", "displayDatePicker('" + txtCalendar.ClientID + "');");

所以我添加onclick事件imgCalendar ,我想这种情况下,以填补在我的文本框中txtCalendar与我的JavaScript函数的输出displayDatePicker ,它完全罚款在Internet Explorer,但Click事件不会在Chrome中火,任何想法为什么会这样? 还有什么其他方法可以将click属性添加到图像中?

你不应该做这样的事情吗?

imgCalendar.addEventListener("click", "displayDatePicker('"+txtCalendar.ClientID+"')", false);

问题在于,当呈现HTML时,文本框控件的名称正在改变,因此调用了函数displayDatePicker('uc1_txtCalendar') ,而文本框的名称(请注意,它的名称属性不是ID会被客户端使用,因为将一个asp文本框呈现为html输入控件)被呈现为'uc111 $ textCalender',这是问题所在的“ $”代替下划线,我通过为所有内容都提供一个静态ClientIDMode来解决此问题(对于文本框它是容器,在这种情况下是用户控件)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM