2016-03-18 25 views
0

我使用json for php javascript。但是当javascript回调时,它会显示HTML Every Where。如何从JSON响应中删除所有HTML

代码:

$('#buyNow').click(function(){ 
    $('#loading').html('<i class="fa fa-spinner fa-pulse fa-3x fa-fw margin-bottom"></i>'); 
    $('#group-pay').hide(); 
    var nameproduct = $('#myModalLabel1').text(); 
    $.get(base_url+"dashboard/shop",{ buy: idProduct },function(data){ 
     var obj = $.parseJSON(data); 
     alert(data); 
     if(obj.Code == 200){ 
      $('#loading').html('<div class="alert alert-success">Success <strong>'+nameproduct+'</strong></div>'); 
      $('#group-pay').show(); 
     }else{ 
      $('#loading').html('<div class="alert alert-danger">Error</div>'); 
      $('#group-pay').show(); 
     } 
    }); 
}); 

我的PHP:

$vatpham = $_REQUEST['buy']; 
if($vatpham >= 400 && $vatpham <= 609) 
{ 
    $json = array("Code" => "200"); 
    echo json_encode($json); 
} 

错误效应初探表现为:

{"Code":"200"}<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8"> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
<title>Cửa hàng</title> 

<link href="http://bieberkieu.com/project/demo/css/bootstrap.min.css" rel="stylesheet"> 
<link href="http://bieberkieu.com/project/demo/css/datepicker3.css" rel="stylesheet"> 
<link href="http://bieberkieu.com/project/demo/css/styles.css" rel="stylesheet"> 
<link href="http://bieberkieu.com/project/demo/css/styles.css" rel="stylesheet"> 
<!--Icons--> 
<script src="http://bieberkieu.com/project/demo/js/lumino.glyphs.js"></script> 
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css" rel="stylesheet"> 
<!--[if lt IE 9]> 
<script src="js/html5shiv.js"></script> 
<script src="js/respond.min.js"></script> 
<![endif]--> 

</head> 

<body> 

它表明我的身后JSON响应HTML,任何想知道为什么吗?我尝试ob_clean()但不工作。

+0

您使用的MVC PHP框架? –

+0

那个PHP代码后面是什么?有更多的东西吗?因为在继续执行其他任何操作之前,您的代码看起来像正确生成JSON。 – Pointy

+0

是啊!我使用codeigniter :)也许我尝试为此创建另一个控制器。 –

回答

0

在笨控制器类,创建一个方法只能产生JSON并返回它的代码,从来没有从该方法加载任何观点:

// dashboard/shop 
public function shop() { 
    // in this method should only returned jSON respond 
    // instead of any view 
    $vatpham = $_REQUEST['buy']; 
    if($vatpham >= 400 && $vatpham <= 609) 
    { 
    $json = array("Code" => "200"); 
    echo json_encode($json); //<--- only return this 
    } 
    // remove below code if have, or create another method to only return 
    // json respond 
    $this->load->view('somefilename', $data); 

} 

或者,如果你不能删除,则需要更换所有的html内容和留下的JSON,但这种解决方案并不明智:

​​
相关问题