Ajax内部触发器成功
Trigger inside Ajax success
我只想在Ajax成功时触发函数
我的功能ajax
$.ajax({
type: "POST",
url: url,
dataType: "json",
success: function(msg) {
console.dir(msg);
if(msg.status == 'OK'){
$("#fb-root").on("facebook:init", function(event, response) {
if(response.status === 'connected') {
alert("LOG")
}else{
alert(" NO LOG ");
}
});
}
}
});
触发功能
function getLoginStatus() {
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
$('#fb-root').trigger('facebook:init',[response]);
} else if (response.status === 'not_authorized') {
$('#fb-root').trigger('facebook:init',[response]);
} else {
$('#fb-root').trigger('facebook:init',[response]);
}
});
}
从不使用alert("LOG")
或alert("NO LOG");
如果我使用
$("#fb-root").on("facebook:init", function(event, response) {
if(response.status === 'connected') {
alert("LOG")
}else{
alert(" NO LOG ");
}
});
在ajax之外,它的工作原理是
感谢
我想你需要这个:
//Move this function outside ajax as this is to register event handler, not to trigger the function.
$("#fb-root").on("facebook:init", function(event, response) {
if(response.status === 'connected') {
alert("LOG")
}else{
alert(" NO LOG ");
}
});
function getLoginStatus() {
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
$('#fb-root').trigger('facebook:init',[response]);
} else if (response.status === 'not_authorized') {
$('#fb-root').trigger('facebook:init',[response]);
} else {
$('#fb-root').trigger('facebook:init',[response]);
}
});
}
$.ajax({
type: "POST",
url: url,
dataType: "json",
success: function(msg) {
console.dir(msg);
if(msg.status == 'OK'){
getLoginStatus(); //only trigger the function when ajax is successful.
//or $('#fb-root').trigger('facebook:init',msg);
}
}
});
$("#fb-root").on("facebook:init"
是注册事件处理程序,而不是触发事件。您应该始终在$.ajax函数外部添加事件处理程序,并在成功函数内部触发它。
相关文章:
- 尽管链接成功并已成功下载,但未找到NPM模块
- 悬停功能触发器
- 在另一个函数成功结束后调用该函数
- 在ajax成功后,cluetip不适用于首次点击活动元素
- jQuery成功函数中的ajax成功函数
- jQuery触发器点击未从AJAX成功工作
- 如何使用jQuery可编辑插件检查ajax是否成功完成
- 执行ajax成功函数-jQUERY
- 解析云代码错误:解析.错误{代码:141,消息:“未调用成功/错误”}
- 如何从servlet获取数据到ajax成功
- 成功回调永远不会被JSONP请求调用
- 将表单张贴到MailChimp,但显示动态成功页面
- ajax请求成功,但可以'我看不到我的数据
- I'我试图在文本区域中进行特定的输入,调用特定的javascript函数,但没有成功;不起作用
- 为什么会返回触发器('点击')
- Ajax内部触发器成功
- JSONP - 触发器完成、成功、错误 Ajax 调用
- 触发器成功处理程序已完成执行,其中包含嵌套的 ajax 请求
- window.requestFileSystem当代触发器'成功'和'错误'回拨
- 如果成功触发器在表单标签中,则ModalInstance是未定义的