以下是 HTML 页面加载时应根据我的情况运行的语句。
document.getElementById("name_field").value = "JavaScript";
但这没有任何作用。如果我尝试以不同的方式做同样的事情:
window.onload = init;
function init() {
document.getElementById("name_field").value = "JavaScript";
}
那么这工作正常。
第一个脚本有什么问题?
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="valtest.js">
</script>
</head>
<body>
<form>
<label>Enter your name <input type="text" id="name_field" /></label> <br/>
<input type="submit" value="submit" />
</form>
</body>
</html>
最佳答案
Onload 在页面中呈现 HTML 后运行。因此,在您的第一个示例中,该元素尚不可用于 JavaScript 处理。
大多数使用“文档就绪”,这意味着文档已经呈现。
jQuery 示例:
$(document).ready(function() {
init()
});
关于javascript - 为什么脚本不这样工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7517303/