意外的令牌

问题描述:

我正在使用json和jquery在php应用程序中接收异步数据。但我发现的语法错误:意外的令牌<json与jQuery

未捕获的语法错误:意外的标记<

请给我建议。 我用相同的代码在另一个程序中被执行良好,但下面的代码显示错误

HTML代码/ jQuery代码:

$('#cmb_package').bind('change', function() { 
    var value = $(this).val(); 
    var destination = $("#destination").val(); 
    var service_val = $("#serviceid").val(); 
    var newdiv = $('#divserviceprovider'); 
    if (value == "NoPackage") { 
     $.ajax({ 
      type: 'POST', 
      url: '../costsheets/getpricebyajax', 
      dataType: 'json', 
      content: 'application/json', 
      data: { 
       service: service_val, 
       destno: destination 
      }, 
      success: function (data) { 
       alert("success"); 
       newdiv.text(''); 
       newdiv.append(data.msg); 
       newdiv.show(500); 
       if (data.error === true) newdiv.show(500); 
      }, 
      error: function (XMLHttpRequest, textStatus, errorThrown) { 
       alert("fail " + errorThrown); 
       newdiv.removeClass().addClass('error') 
        .text('There was an error.').show(500); 
       newdiv.show(500); 
      } 
     }); 
     return false; 
    } else { 
     $('#div-packagetype').show(); 
    } 
}); 

PHP CODE:

function getpricebyajax() 
{ 

      $str="";$substr=""; 
      header("Content-type: application/json"); 

      $return['error'] = true; 
      $return['msg'] = "Success"; 

      echo json_encode($return); 

      exit; 
    } 

我使用CakePHP 1.3框架。

+0

实际的json返回的是什么? – sevenseacat 2013-02-20 12:27:11

+2

哪一行代码触发错误?您的浏览器的开发工具Net标签对于请求有什么看法?请求是否成功?答案是否像你期望的那样? – Quentin 2013-02-20 12:27:39

+0

它会产生错误。 – 2013-02-20 12:32:01

当你使用一个框架(蛋糕PHP)可能是你的代码内嵌到另一个进程,将打印的经典开始HTML页面(如<html> ...等)

看看这个例如:json output with CakePHP用户设置特定的布局,让结果页面(骨架)为空:

$this->layout = 'ajax';