使用javascript函数调用Ajax方法

使用javascript函数调用Ajax方法,javascript,ajax,html,Javascript,Ajax,Html,我在使用jQuery Mobile。 移动到详细信息的我的代码 <a href="#details" data-ajax="true" data-transition="pop" data-role="button" data-inline="false" data-icon="info">Go To Details</a> 身份验证后我得到了有效的用户响应。现在我想导航到详细信息div 那么,在成功登录后,如何实现ajax代码?? 如有任何建议,将不胜感激 谢谢。使用

我在使用jQuery Mobile。
移动到详细信息的我的代码

<a href="#details" data-ajax="true" data-transition="pop" data-role="button" data-inline="false" data-icon="info">Go To Details</a>
身份验证后我得到了有效的用户响应。
现在我想导航到
详细信息
div

那么,在成功登录后,如何实现ajax代码??
如有任何建议,将不胜感激

谢谢。

使用$.ajax()调用Facebook API进行身份验证,并在ajax函数的回调函数中调用详细信息链接的单击事件

也许是这样的

  $.ajax({
     url : 'https://graph.facebook.com/me'+whatever,
     success : function(){
        $('#details').click()
     }
  });

ajax调用成功时将调用success函数。

您应该将
onclick
事件绑定到返回
true
的函数,而不是直接更改
href
属性

修改您的
标签


修改您的
userLogin
功能:

函数userLogin(){
FB.login(
功能(响应){
if(response.authResponse){
警报(“已登录”);
FB.api('/me',函数(响应){
警报(“欢迎”+响应.名称);
});
}否则{
警报(“未登录”);
}
},
{范围:“电子邮件”}
);
返回true;
}
似乎
FB.login
是一个异步操作。如果要在登录操作后重定向,请尝试在登录后修改
location.hash
。请注意,返回值已更改为
false

函数userLogin(){
var hash=“#详细信息”;
FB.login(
功能(响应){
if(response.authResponse){
警报(“已登录”);
FB.api('/me',函数(响应){
警报(“欢迎”+响应.名称);
window.location.hash=散列;
});
}否则{
警报(“未登录”);
}
},
{范围:“电子邮件”}
);
返回false;
}

您可以将其设置为cookies,然后重定向到详细信息页面。如果您有jquery,请尝试
$('a[href=“#details”]”)。单击()
不工作。。它直接转到那个div而不需要验证用户。谢谢伙计。已解决..:)但我已在标记中编辑并删除href属性,因为它在经过身份验证之前进行导航。再次感谢……)
function userLogin() {
     FB.login(
          function(response) {
               if (response.authResponse) {
                   alert('logged in');

                   FB.api('/me', function(response) {
                     alert("Welcome " + response.name);
                   });
                } else {
                   alert('not logged in');
                }
           },
           { scope: "email" }
     );
}
  $.ajax({
     url : 'https://graph.facebook.com/me'+whatever,
     success : function(){
        $('#details').click()
     }
  });