【发布时间】:2009-08-09 18:22:19
【问题描述】:
我没有大量使用 JavaScript 的经验,并且在使用可变范围和 jquery 时遇到了麻烦。我有以下结构:
function pass_variables()
{
username = "efcjoe"
response = post_variables(username)
alert(response)
}
function post_variables(username)
{
$.post(
'/path/to/url/',
{
'username': username,
},
function(data)
{
valid = (data != 0) ? true : false
// OPTION 1: If I put return here...
return valid; // ... the alert box in pass_variables says "undefined"
},
"text"
);
// OPTION 2: If I put return here...
return valid; // ... The alert box does not pop up, and Safari debug gives
// me the error: "Can't find variable: valid"
}
我错过了什么吗?我认为valid 应该是一个全局变量,因此选项 2 应该可以正常工作。我真的不确定选项 1。
任何人都可以给我任何建议,让我知道如何以最好的方式完成这项工作吗?
非常感谢。
【问题讨论】:
-
Eww,尽可能少的全局变量。在这种情况下,你做错了。
标签: javascript jquery scope