Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:无法将json输出作为变量值输入我的javascript页面_Php_Jquery_Ajax_Codeigniter - Fatal编程技术网

PHP:无法将json输出作为变量值输入我的javascript页面

PHP:无法将json输出作为变量值输入我的javascript页面,php,jquery,ajax,codeigniter,Php,Jquery,Ajax,Codeigniter,我必须得到这种格式的输出 var-sampleTags=['c++','scala'] 我的javascript函数是: <script> $(document).ready(function(){ $(function(){ var sampleTags; $.ajax({ url:"<?php echo base_url('ajax_get_ta

我必须得到这种格式的输出
var-sampleTags=['c++','scala']

我的javascript函数是:

 <script>
            $(document).ready(function(){
        $(function(){  
             var sampleTags;

            $.ajax({
                url:"<?php echo base_url('ajax_get_tags/gettags'); ?>"
            }).done(function(data) {
                if (data) {
                   sampleTags = data;
                }
            });
       ......................
        .......................



 $(function(){  
     var sampleTags = <?php echo json_encode($query) ?>;
我的模型是

 //-------------------------------Function get all tags--------------------------------
function get_all_tags() { 
    $this->load->database();
    $this->db->limit('10');
    $this->db->select('tags_name');
    $res = $this->db->get('tags');
    $ret = array();

    foreach ($res->result_array() as $row) {
          $ret[] = $row['tags_name'];
    }

    return $ret;
}
如何让ajax请求的json输出显示javascript变量的值?
请帮我解决这个问题。

我想提出一些建议

  • 通过使用die或exit打印,检查服务器端的返回值
  • 检查firebug net选项卡中的http响应。 三,

  • 您使用的是较旧版本的jQuery,因此
    .done
    无法工作。看起来您想向名为
    complete
    的请求对象添加一个键,其值为匿名函数:

    $.ajax({
      url: "<?php echo base_url('ajax_get_tags/gettags'); ?>",
      complete: function(data) {
          if (data) {
              sampleTags = data;
          }
      }
    });
    
    $.ajax({
    url:“”,
    完成:功能(数据){
    如果(数据){
    样本标签=数据;
    }
    }
    });
    

    我通过谷歌搜索你的错误信息发现了这一点。结果之一是这个问题:。你可以在谷歌上搜索错误信息,然后自己解决这个问题。

    你遇到了什么错误?(尝试查看javascript错误日志)@Blazemonger实际上它的这不是重复的,两者都是不同的question@sgroves控制台中的这个错误
    uncaughttypeerror:Object#没有方法“done”
    我根本不清楚你的新问题是什么。“根据你的说法,我应该怎么做才能得到我上面解释的正确的数据格式?”这不是我们任何人都能回答的问题。在我看来,您应该问这个问题,作为对前面问题的评论。您使用的是较旧版本的jquery吗?尝试
    success
    而不是
    done
    。现在我使用的是更新版本
    jquery-1.9.1.min.js
    。是的,我学到了那一课。
    你可以通过谷歌搜索错误消息,自己解决这个问题。
    对不起,斯格罗夫,它仍然没有填充值。我检查了控制台。我没有发现错误。那么你必须进行一些调试。此站点不允许其他人为您进行调试。调试方式是什么?我认为ajax函数中有一个错误。因为我检查了php函数是否返回值,所以使用
    console.log
    alert
    检查JS函数中的
    data
    变量将是一个很好的开始。除此之外,这取决于你。这个网站上没有人会教你如何调试一个程序。好吧,如果你不喜欢“辛苦工作”,你可能应该放弃编程,去找一份为政府工作的工作什么的。听起来您可能对从控制器返回的json感到困惑。你看到这个了吗?
    $.ajax({
      url: "<?php echo base_url('ajax_get_tags/gettags'); ?>",
      complete: function(data) {
          if (data) {
              sampleTags = data;
          }
      }
    });