jQuery没有向codeigniter发送数据

时间:2012-11-13 02:13:46

标签: php jquery ajax codeigniter

我正在尝试让ajax使用codeigniter安装。

这是我的PHP函数:

    function test() {
            return print_r("hey");
    }

这是JS:

    $.ajax({
          type: "POST",
            url: "http://localhost/code/test",
            success: function(data) {
                    alert(data);    
            }
    });

这很好用但是,只要我添加数据就不行。

    $.ajax({
          type: "POST",
            url: "http://localhost/code/test",
            data: {bar:"foo"}, 
            success: function(data) {
                    alert(data);    
            }
    });

提前致谢!

3 个答案:

答案 0 :(得分:4)

请查看以下内容

$.ajax({
          type: "POST",
            url: "http://localhost/code/test",
            data: "&bar=foo&isAjax="+true, 
            success: function(data) {
                    alert(data);    
            }
    });

和控制器......

function test() {
            if($this->input->post('isAjax')){
                  return print_r("hey");
            }
            else{
                  //do another thing
            }

    }

另外一件事,如果你想以json格式添加数据,那么你必须在$ .ajax对象中添加另一个属性datatype: "json"

答案 1 :(得分:2)

使用以下内容:

$.ajax({
          type: "POST",
          url: "http://localhost/code/test",
          dataType: 'json',
          data: {'bar':'foo'},
          success: function(data) {
                  alert(data);    
          }
    });

或者您可以使用速记版本:

$.post("http://localhost/code/test", {'bar':'foo'}, function(data) {
    alert(data);
});

你的php代码应该是:

function test() {
    echo "hey";
}

答案 2 :(得分:1)

尝试以下方法:

$.ajax({
    type: "POST",
    url: "http://localhost/code/test",
    data: "bar=foo&name=cyberbob", 
    success: function(data) {
            alert(data);    
    }
});