Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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
Jquery 模型没有响应。Codeigniter Ajax请求_Jquery_Ajax_Codeigniter - Fatal编程技术网

Jquery 模型没有响应。Codeigniter Ajax请求

Jquery 模型没有响应。Codeigniter Ajax请求,jquery,ajax,codeigniter,Jquery,Ajax,Codeigniter,这是我第一次尝试ajax,我对CI也是新手。我已经按照下面的方式设置了我的MVC,并且正在使用bookmarklet调用js函数。我知道程序的bookmarklet部分正在工作,因为我可以硬编码a$(“#source”).val('Update Summary ID'),并让它正确更新我的字段。当我尝试使用AJAX请求时,没有得到响应。我正在使用firebug来检查响应,并且没有发现错误。让我知道到目前为止我是否已正确设置了所有内容,以及我还缺少什么。谢谢 控制器: public fun

这是我第一次尝试ajax,我对CI也是新手。我已经按照下面的方式设置了我的MVC,并且正在使用bookmarklet调用js函数。我知道程序的bookmarklet部分正在工作,因为我可以硬编码a
$(“#source”).val('Update Summary ID')
,并让它正确更新我的字段。当我尝试使用AJAX请求时,没有得到响应。我正在使用firebug来检查响应,并且没有发现错误。让我知道到目前为止我是否已正确设置了所有内容,以及我还缺少什么。谢谢

控制器:

    public function updatePajeFields(){
        $data['id'] = $this->mAutoPAJE->updatePajeFields();
        header('Content-type: application/json; charset=utf-8');
        echo json_encode($data['id']);

    }
型号:

     public function updatePajeFields(){
         $row = $_POST['row'];
         $this->db->select('*');
         $this->db->from('pajeV2test');
         $this->db->where('paje_id', $row);

         $query = $this->db->get();
         return  $query->result_array();
      }
javascript:

    $(document).ready(function() {

        var data = {
             'row' :  prompt("What is the ID?  v4")
        }
    $.ajax({
         url: 'http://myurl',
         data: data,
         type: 'POST',
        success: function(responses) {
             $('#ticket').val(responses.researched_by);
             $('#source').val(responses.researched_by);
        }
    });
 });

我认为result\u array将返回一个数组,因此您需要像
$results=$query->result\u array()这样的东西$返回$results[0]。或者,您可以使用
$query->row()返回一行


你能试试
文件内容('log.txt',$this->db->\u compile\u select())吗
就在
$this->db->get()之前行?这将为您提供它正在运行的确切查询。然后,您可以查看查询是问题(例如参数不正确)还是数据本身。我可以从何处访问log.txt输出?如果PHP具有写入权限(如果您的主机配置正确,则应该具有写入权限),它将在您的脚本正在执行的目录中。我正在本地主机上运行它,在任何日志文件夹中都看不到它。我能回显结果吗?我想您可以尝试回显,并在浏览器控制台中查看结果。至于
log.txt
文件,您应该能够在
models
controllers
目录中找到它。您在firebug中看到的ajax调用的响应是什么?响应为空。我尝试过其他一些方法,但效果不一。我想确保首先调用控制器,所以我只是在函数中添加了一个基本的回显。直到我添加了
数据类型:“jsonp”
,echo才起作用。尽管我的POST变量没有被传递到模型,但是有了它。这有助于任何故障排除吗?为了进行调试,我建议您从控制器中删除json头,将jquery中的数据类型设置为“text”,并将console.log(responses)放入成功回调中,现在如果您设法在控制器中获得回显,请添加
var\u dump($row)
在您的模型中,我还建议您使用CI的输入类来检索post值,如下所示
$row=$this->input->post('row')
谢谢考拉!像这样设置,我没有收到任何响应或回音。您的控制台打开了吗?你还收到控制器的回音吗?调试AJAX时的另一个有用提示:您可以进入Firebug的“Net”选项卡,单击“XHR”并分析完整的请求和响应头