Javascript更新和访问函数外的变量
Javascript update and access variable outside function
我一定做错了什么。我希望下面的代码能更新并访问全局变量"gvar",但它没有。请问我做错了什么?
<script type="text/javascript">
var gvar;
$(function () {
$(document).ready(function () {
$.getJSON("json.php", function (myData) {
$.each(myData.tag, function (t, myData) {
if(myData.myId != null) {
gvar = myData.myId;
}
});
return false;
})
});
});
</script>
<script type="text/javascript">
alert(gvar);
</script>
gvar
只有在dom准备好后才会填充。但是,一旦解析了该部分代码,就会立即执行警报。尝试将警报放在ready()
函数的末尾。
@Yoshi还有另一个我刚刚错过的优点:变量的填充甚至会延迟,直到请求成功执行。为了测试它,您可以设置几秒钟的超时,然后提醒变量。到那时,请求应该已经结束,变量将具有一个可以发出警报的值。但这只是为了测试变量是否在全局范围内工作,因为当在回调内部发出警报时,变量当然已经设置在警报的正上方。)
相关文章:
- 带有两个变量函数的Ajax提交表单
- 设置变量函数不起作用
- 为什么使用 ||在变量函数声明中
- Javascript 变量函数不保留值
- 为什么要在函数定义之外引用静态变量(函数属性)
- jQuery 变量函数无法运行
- 循环中的变量函数定义
- javascript onclick设置为变量函数名
- JavaScript:调用已启动类(数据包处理程序)的变量函数
- Javascript测试存根全局变量函数
- Aptana能否识别其他文件中定义的变量/函数
- jquery将其传递给变量函数
- 传递一个变量函数到数组[Javascript]
- 如何使用' this '像一个对象,并通过字符串获得它的变量/函数
- javascript变量/函数的首字母是什么意思?
- Javascript .apply带有变量函数名
- 在JavaScript中添加一个全局变量/函数(特别是NativeScript)
- 变量函数未定义错误
- AngularJS-继续检查变量/函数
- Javascript从本地向全局变量函数添加行