Javascript更新全局变量和提升
我有一个JavaScript函数,它使用ajax函数发布到php脚本和一个变量,用于确定结果是否返回true或false。 在PHP中,我通常将函数分配给这样的变量:
$insert_item = $process->insert_item($item_array);
If ($insert_item->error)
{
//error detected, do something
}
我一直无法用javascript来完成。 相反,如果我将一个函数分配给一个变量,我会得到一个[object object]返回值。 作为一个便宜的选择,我试图用一个全局变量来写任何错误:
var error = false;
function update_db(formInput) {
$.post(action.php, formInput, function(data) {
if (data != 0) {
error = true
}
});
return error;
}
var updateDb = update_db(form_data);
if (updateDb) {
alert("error detected");
在这个例子中,尽管ajax函数将它更新为true,'error'也会返回false。 我已阅读所有有关JavaScript提升,但尚未找到解决方案。 有没有办法解决? 我的问题完全来自于ajax函数,我也尝试直接访问返回任何变量(就像我轻松地在PHP中执行),但我没有运气!
作为一个便笺,我发现有趣的是,我可以访问ajax函数中的'错误'(返回为false),但无法更改它。
链接地址: http://www.djcxy.com/p/96303.html