js声明的遍历获取不到变量的值
iframe加载了一个页面,在加载iframe的页面获取iframe中let申明全局变量输出undefined,示例代码如下
点击按钮输出
undefined
admin
type="button" onclick="alert(i.contentWindow.role+'\n'+i.contentWindow.role1)" value="输出iframe中变量" />
2.html
<script>
let role = "admin";
var role1 = "admin";
script>
你把事件写到input中这时候iframe还没加载完成,所以无法获取到值 你应该修改成这样,这样你点击的时候已经加载好了
<iframe src="2.html" id="i"></iframe>
<input type="button" onclick="get()" value="输出iframe中变量" />
<script>
function get(){
alert(i.contentWindow.role1)
}
</script>
i没定义
直接输出role,不要写i.contentWindow.role
i是iframe的id,它不是变量名
要么你用find函数去获取这个控件的实例也行