Codeigniter不能调用ajax函数

时间:2012-12-02 18:47:19

标签: jquery ajax codeigniter

我正在尝试使用ajax验证注册表单,以检查数据库中用户输入的可用性。我正在使用我在教程网站上找到的一些代码但无法使其工作。

http://www.99points.info/2010/07/codeigniter-tutorial-check-usernameemail-availablity-using-jquer-in-codeigniter/

我正在使用codeigniter框架,我的php还可以,但我对jQuery / js语法知之甚少

查看:

<script>
$(document).ready(function() {
    /// make loader hidden in start
    $('#Loading').hide();    
    $('#email').blur(function()
        {
        var a = $("#email").val();
        var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
        // check if email is valid
        if(filter.test(a))
            {
            // show loader 
            $('#Loading').show();
            $.post("<?php echo base_url()?>signup/check_email_availablity", {
            email: $('#email').val()
            },
            function(response)
                {
                //#emailInfo is a span which will show you message
                $('#Loading').hide();
                setTimeout("finishAjax('Loading', '"+escape(response)+"')", 400);
                });
        return false;
        }
});
function finishAjax(id, response){
  $('#'+id).html(unescape(response));
  $('#'+id).fadeIn();
}
</script>

所以ajax代码什么都不做我能看到的唯一的东西是在chrome开发人员工具控制台中出错了

  

未捕获的SyntaxError:意外的输入结束

是否有一些语法错误搞砸了?

我是否缺少一些需要在codeigniter中加载的库/助手?

1 个答案:

答案 0 :(得分:1)

您的问题(至少)位于<?php echo base_url()?>

在关闭php标记之前,你忘记了;并且没有空格。

更改为:

<?php echo base_url(); ?>