JS表单调用
<html><head><title>文字闪烁</title><scripttype="text/javascript">varf=document.getElement...
<html>
<head>
<title>文字闪烁</title>
<script type="text/javascript">
var f=document.getElementById("form1");alert(flashelement.flashit.value);alert(f.flashit.value);
</script>
</head>
<body>
<form id="form1">
<input type="text" value="文本框" name="flashit" id="flashit">
</form>
</body>
</html>
alert没有出现 为什么啊? 展开
<head>
<title>文字闪烁</title>
<script type="text/javascript">
var f=document.getElementById("form1");alert(flashelement.flashit.value);alert(f.flashit.value);
</script>
</head>
<body>
<form id="form1">
<input type="text" value="文本框" name="flashit" id="flashit">
</form>
</body>
</html>
alert没有出现 为什么啊? 展开
2个回答
展开全部
按照你的代码,我们先来分析一下原因。
首先,代码存在错误,flashelement变量是不存在的。会报错。
其次,JavaScript
应该写在DOM内容的后面。由于还没有渲染结束,直接获取元素,是无法获取到的。例如你页面中获取form标签。至少要让form标签被浏览器渲染了以
后,再去获取它。如果一定要将JavaScript代码写在head里,就需要增加页面加载完毕事件才可以。告诉浏览器,当页面全部渲染结束了以后再来执
行这段JavaScript代码。
根据你的代码,帮你稍微改动了一下。
示例如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<form id="form1">
<input type="text" value="文本框" name="flashit" id="flashit">
</form>
<script type="text/javascript">
var f=document.getElementById("form1");alert(f.flashit.value);
</script>
</body>
</html>
运行结果:
展开全部
JS是从上到下执行的,因为你'alert(flashelement.flashit.value);'这段代码flashelement 没有定义所以JS解释器抛出一个异常,然后程序就退出了不会再执行'alert(f.flashit.value);'。而且'alert(flashelement.flashit.value);'这段代码解释器先获取flashelement.flashit.value这个值,然后再alert的所以第一个alert也不弹出来就退出程序了。
解决方法就是把'alert(flashelement.flashit.value);'注释掉或者删除
解决方法就是把'alert(flashelement.flashit.value);'注释掉或者删除
追问
大神你也解释的很清楚,不过楼上的比你更具体些,所以采纳他了。还有一个问题:
我加了个div id为a 用alert(flashelement.a.innerHTML)没反应 这又是为什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询