我有一種將數據發佈到同一頁面的窗體。基於用戶的單選按鈕選擇,我將checked =「checked」插入到單選按鈕表單元素中,以重新顯示正確的選擇。這工作得很好,但是當表單重新顯示時(如果輸入錯誤等),我需要顯示div(包含表單中的相關字段)。使用JavaScript自動根據單選按鈕的狀態顯示div
我有一個onclick事件,顯示在第一個地方(在用戶張貼表單之前)的div,並且這工作正常,但是當我重新顯示錶單時,我不希望用戶必須手動顯示通過點擊再次顯示錶格。
所以我一直在試圖大意如下(重上剪下來的這個帖子的目的)的東西......
<link href="styles/style1.css" rel="stylesheet" type="text/css" />
<script language="JavaScript">
if (document.getElementById('complete_yes').checked) {
document.getElementById('repair_complete').style.display = 'block';
} else {
document.getElementById('repair_complete').style.display = 'none';
}
</script>
<form action="javascript_test.php" method="POST">
<input id="complete_yes" type="radio" name="complete" checked="checked" value="true"/>Yes
<input id="complete_no" type="radio" name="complete" value="false"/>No
<input type="submit" value="Save">
<div id="repair_complete">
I'm a div!
</div>
...但它返回一個必選對象 JavaScript錯誤(當它在 '真實' 頁面所做的):
信息:對象所需
行:3
字符:1
代碼:0
網址:http://localhost/repair_system/javascript_test.php
這是爲什麼?我沒有正確引用表單元素嗎?道歉,如果我是一個「div」(蓄意壞雙關意圖!),我還沒有學習JavaScript的樂趣和遊戲!
使用onload是一種相當標準的方法,但是如果頁面上有大量資源,它會在渲染標記和觸發腳本之間造成延遲。請參閱http:// stackoverflow。COM /問題/ 473628 /什麼外部的資源,被加載,當用窗的onload事件,是燃煤和乜是獲取更多信息的加載事件的順序。 – Joel 2009-08-05 20:09:54
感謝您的答覆 - 運行此代碼產生了同樣的錯誤,但... – cw84 2009-08-05 20:12:27