从codeigniter获取响应的Ajax代码中出错


Error in Ajax code to get response from codeigniter

我想将我的请求发送到CodeIgniter,以从我的数据库中获得响应:

$(document).ready(function(){
$('.confirm_send').on('click',function(){
var base = '<?php echo base_url(); ?>';
var confirm_send_id=$(this).attr('id');

        $.ajax({
            'url': base + 'my_site/confirm_send',
            'type':'post',
            'dataType':'json',
            'data':{
                'id':confirm_send_id
            },
            'success':function(){
                alert("sucssess");},
            'error':function(){
                alert("Error");
            }

        });//end of ajax confirm send button
    });//end of confirm send button
    });//end of jquery

但是我犯了一个错误。

试试这个:

 $('.confirm_send').on('click',function(){
     var base = '<?php echo base_url(); ?>';
     var confirm_send_id = $(this).attr('id');
     $.ajax({
        url: base + 'my_site/confirm_send',  //make sure it is a valid path
        type: 'POST',
        data:({'id':confirm_send_id}),
        success :  function(response){
             alert("Success");
        },
        error : function(response){
            alert("Error");
        }
    });//end of ajax confirm send button

});

s a server side coding issue that就是它出现问题的原因——你可以使用响应窗口检查错误——它会显示编码错误。

您不能将PHP代码注入JavaScript。请记住,您定义的任何脚本或css都将在用户的浏览器中运行,浏览器不会解释PHP代码,也无法直接访问您的服务器。

您必须对base_url变量进行硬编码。如果你不知道,只需在一页上echo base_url();并复制它。

$(document).ready(function(){
$('.confirm_send').on('click',function(){
var base = 'http://yourproject_base_url'; //Set the full base url manually here. 
var confirm_send_id=$(this).attr('id');
    $.ajax({
        'url': base + 'my_site/confirm_send',
        'type':'post',
        'dataType':'json',
        'data':{
            'id':confirm_send_id
        },
        'success':function(){
            alert("sucssess");},
        'error':function(){
            alert("Error");
        }

    });//end of ajax confirm send button
});//end of confirm send button
});//end of jquery