背景:我有一個包含視頻作爲學習資源的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