douyongdao4046 2011-06-14 10:37
浏览 56
已采纳

使用Codeigniter在jQuery Mobile上进行Ajax请求

Currently Im trying to do ajax request using jQuery Mobile. I`m trying to use example on http://www.giantflyingsaucer.com/blog/?p=2574. Yes, it works perfectly. But problems was coming when i tried to use the code inside codeigniter.

Here is my controller :

<?php
class Ajax extends CI_Controller {
    function __construct() {

    }

    function index() {
        ?>
        <!DOCTYPE html>
        <html>
            <head>
            <title>Submit a form via AJAX</title>
              <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a4/jquery.mobile-1.0a4.min.css" />
              <script src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
              <script src="http://code.jquery.com/mobile/1.0a4/jquery.mobile-1.0a4.min.js"></script>
        </head>
        <body>
            <script>
                function onSuccess(data, status)
                {
                    data = $.trim(data);
                    $("#notification").text(data);
                }

                function onError(data, status)
                {
                    // handle an error
                }        

                $(document).ready(function() {
                    $("#submit").click(function(){

                        var formData = $("#callAjaxForm").serialize();

                        $.ajax({
                            type: "POST",
                            url: "callajax",
                            cache: false,
                            data: formData,
                            success: onSuccess,
                            error: onError
                        });

                        return false;
                    });
                });
            </script>

            <!-- call ajax page -->
            <div data-role="page" id="callAjaxPage">
                <div data-role="header">
                    <h1>Call Ajax</h1>
                </div>

                <div data-role="content">
                    <form id="callAjaxForm">
                        <div data-role="fieldcontain">
                            <label for="firstName">First Name</label>
                            <input type="text" name="firstName" id="firstName" value=""  />

                            <label for="lastName">Last Name</label>
                            <input type="text" name="lastName" id="lastName" value=""  />
                            <h3 id="notification"></h3>
                            <button data-theme="b" id="submit" type="submit">Submit</button>
                        </div>
                    </form>
                </div>

                <div data-role="footer">
                    <h1>GiantFlyingSaucer</h1>
                </div>
            </div>
        </body>
        </html>
        <?php
    }

    function callajax() {
        echo "ok";
    }
}

I want to display 'ok' in notification. Im trying to call function callajax instead of call from callajax.php is this possible or do I need to create callajax.php? Ive tried to create callajax.php but it was failed.

Thank you,

  • 写回答

1条回答 默认 最新

  • douba7784 2011-06-14 10:41
    关注

    You probably want the url to be:

     url: "ajax/callajax",
    

    As you are calling the callajax function within the controller ajax.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 ensp的问题(需要各个路由器命令)
  • ¥15 Matlab怎么求解含参的二重积分?
  • ¥15 苹果手机突然连不上wifi了?
  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了
  • ¥15 电脑最近经常蓝屏,求大家看看哪的问题