Javascript 回调函数参数问题
我正在为接受权限的函数编写一个回调函数和一个可选的回调函数 如果用户拒绝权限对话框,则应该传递Javascript 回调函数参数问题,javascript,jquery,facebook,Javascript,Jquery,Facebook,我正在为接受权限的函数编写一个回调函数和一个可选的回调函数 如果用户拒绝权限对话框,则应该传递null。但由于某些原因,即使权限请求失败,我的脚本也总是发出post请求 echo("FB.ensureInit ( function () { FB.Connect.showPermissionDialog('email,offline_access', function(accepted) { if(accepted==null) {a
null
。但由于某些原因,即使权限请求失败,我的脚本也总是发出post请求
echo("FB.ensureInit ( function () {
FB.Connect.showPermissionDialog('email,offline_access',
function(accepted) {
if(accepted==null) {alert('failure');} else {
$.post(\"http://www.domain.com/permissions.php\",
{ username:$userID,mode:'accepted'});}
});
});");
不知道为什么它没有正确读取accepted的值。谢谢你的帮助 如何处理firebug:
console.log(accepted)
看看你能得到什么。可能是未定义的,根据您的逻辑,它仍然可以通过。使用firebug:
console.log(accepted)
看看你能得到什么。可能是未定义的,根据您的逻辑,这仍然是通过的。我的第一个猜测是Javascript
null
值实际上没有返回,而是返回了其他类似false的值
我将尝试更改为该选项,以测试所有类似于false的值:
if (!accepted) {alert('failure')} else {
...
我的第一个猜测是Javascript
null
值实际上并没有返回,而是返回了其他类似于false的值
我将尝试更改为该选项,以测试所有类似于false的值:
if (!accepted) {alert('failure')} else {
...
也许你应该改变你的逻辑:
echo("FB.ensureInit ( function () {
FB.Connect.showPermissionDialog('email,offline_access',
function(accepted) {
if(accepted !== null) {
$.post(\"http://www.domain.com/permissions.php\",
{ username:$userID,mode:'accepted'});}
} else {alert('failure');}
});
});
");
也许你应该改变你的逻辑:
echo("FB.ensureInit ( function () {
FB.Connect.showPermissionDialog('email,offline_access',
function(accepted) {
if(accepted !== null) {
$.post(\"http://www.domain.com/permissions.php\",
{ username:$userID,mode:'accepted'});}
} else {alert('failure');}
});
});
");
是的,效果很好。说了一些关于facebook文档的事情:是的,我查过了文档。不太好。是的,效果很好。说了一些关于facebook文档的事情:是的,我查过了文档。不太好。