您的位置:首页 > Web前端 > JQuery

关于jquery获取json数据的格式问题

2014-01-24 11:29 691 查看
//下面是通过jquery的$ajax获取后台所回传的数据,通过浏览器捕捉到的:

{"login":"1","info":"muzili 欢迎你回来! <a href='/aben/member/member.php?action=main&lang=cn'>用户中心</a>|<a href='/aben/member/member.php?action=out&lang=cn'>退出登陆</a>"}

//下面是前台ajax代码:

<!-- Ajax登录开始 -->
<script type="text/javascript">
  $(document).ready(function(){
  $('#ajax_login').click(function(){
    $.ajax({
      type:"POST",
      url:"{path member/}/member.php",
      data:"action=ajax_login&lang="+$('#ajax_lang').val()+"&password="+$('#ajax_password').val()+"&user="+$('#ajax_user').val(),
      dataType:"json",
      success:function(data){
        if(data.login=="1"){
          $('#userlogin').html(data.info);
          $(".loginbox").slideUp();
        }else{
          alert(data.info);
        }
      },
      error: function(e){ //失败后回调
        alert("回调失败!");
      }
    });
  });

});
</script>
<!-- Ajax登录结束 -->

//下面是后台代码:

if($action=='ajax_login'){
  $user=fl_html(fl_value($_REQUEST['user']));
  $password=fl_html(fl_value($_REQUEST['password']));
  ........

  此处省略n行代码

  ........
  $str=$_SESSION['member_user']." {$language['member_wel']} <a href='".CMS_SELF."member/member.php?  action=main&lang=".$lang."'>".$language['member_msg28']."</a>|<a href='".CMS_SELF."member/member.php?action=out&lang=".$lang."'>{$language['member_out']}</a>";
  die('{"login":"1","info":"'.$str.'"}');
}

//最后做一个总结:

  总的来说,jquery对json数据格式的要求很高,所以大家在单双引号的使用,组装json数据的时候一定要万分小心,免得走太多的冤枉路!!!(另外也要注意一点:换行符和多余空格也会造成json数据无法正常解析)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: