qq_41265012
2019-02-06 18:16
采纳率: 95.5%
浏览 1.4k

js+ajax,为什么无效!到底哪个步骤错了

function getguid判断用户登录则返回1,没有登录返回0。如果获得1,则执行另外3个函数,但是实际情况,在返回1的时候,另外3个函数并没有执行,试了很多种办法,就没有找出原因在哪里?求助!!

function checkauthor()
{
  var topic_id={topicid};
$.ajax({
      url: "url",
      cache: false,
      data:{
              'topic_id':topic_id
            },
     type : 'POST',
      success:function(result)
      {
        console.log(result);
        if(result!=1)
        {
          $('#author').html(result);
        }
      }
    }); 
}
function getlikes()
{
  var topic_id={topicid};
$.ajax({
      url: "url",
      data:{
              'topic_id':topic_id
            },
     type : 'POST',
      cache: false,
      success:function(data)
      {
        console.log(data);

          $('#likes').html(data);
      }
    }); 
}

function getguid()
{
$.ajax({
      url: "url",
      type : 'POST',
      success:function(data)
      {
        if(data==1){
          window.g_uid=data;
          getlikes();
          checkLogin();
                    checkauthor();
        }
      }
    }); 
}
getguid();

//登录后评论
function afterlogin()
{
  var topic_id={topicid};
$.ajax({
      url: "url",
      cache: false,
      data:{
              'topic_id':topic_id
            },
     type : 'POST',
      success:function(result)
      {
        console.log(result);
        if(result!=1)
        {
          $('#after_login').html(result);
        }
      }
    }); 
}
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 天际的海浪 2019-02-06 18:59
    已采纳

    topicid是后台输出的变量吧。是不是应该var topic_id="{{topicid}}";

    你要学会调试程序,看看getguid函数是否执行了,success是否执行了,data的值是否正解

    function getguid()
    {
        console.log("getguid函数执行了");
    $.ajax({
          url: "url",
          type : 'POST',
          success:function(data)
          {
            console.log("success执行了,data是"+data);
            if(data==1){
              window.g_uid=data;
              getlikes();
              checkLogin();
              checkauthor();
            }
          }
        });
    }
    
    
    已采纳该答案
    打赏 评论
  • threenewbee 2019-02-06 18:19

    每个ajax里面加上
    async: false

    否则你的ajax是异步执行的,下面的代码已经执行了,但是success却没有执行到。

    打赏 评论

相关推荐 更多相似问题