背景:我有一个包含视频作为学习资源的asp.net页面。当用户完成观看视频时,会将其标记为“已观看”,并在SQL数据库中创建一个条目。document.getElementById(...)在页面加载后为空
方法:我有一些JS当视频完成检测,然后触发一个JS函数,触发一个隐藏的ASP:按钮的点击事件,这反过来又触发一个vb.net代码隐藏功能,使一些视觉上的变化显示该部分的视频已被观看。
问题:当视频完成时,JS功能大火却无法再找到ASP:通过ID按钮
TypeError: document.getElementById(...) is null
代码:
<asp:button runat="server" ID="videoEndedButton" Text="SubmitVideo" style="display:none;" onclick="videoEndedButton_Click" />
<script type="text/javascript">
document.getElementById('pdp_video_rta').addEventListener('ended', videoEnded, false);
function videoEnded(e) {
document.getElementById("videoEndedButton").click
}
</script>
为什么不能JS函数找到asp:按钮(在页面加载后很久)。我可以单击按钮并运行代码隐藏功能(当它未隐藏时)。
啊,这是我所需要的,并解决了我的问题。我试图将目标作为一个HTML客户端元素的asp服务器端元素。谢谢。 – Ryan