繁体   English   中英

如何从控制器中调用Ajax函数...在Codeigniter中

[英]how to call ajax function from controller…in codeigniter

我需要在codeigniter中创建国家/地区下拉列表。 onchange事件即时消息调用了另一个项目名称为ajax.php的控制器,我需要知道如何在codeigniter中获取url并将数据发送到url。

我的ajax功能是

var base_url = "<? echo base_url()?>";

        function getstate(value) {

                if (value !== '') {

                  //alert('test');

                    $.ajax({
                        type: "POST",
                        url:base_url+"adminzone/ajax/ajax.php",
                        data: "do=getstate&value=" + value,
                        success: function(msg) {

                            alert(msg);

                            //$('#psid').html("<img src='images/spacer.gif'>");

                            $('#reg1').html(msg);


                            //

                            //$('#sid').sSelect({ddMaxHeight: '300px'});

                        },
                        error: function() {
                            //alert('some error has occured...');
                        },
                        start: function() {
                            //alert('ajax has been started...');    
                        }
                    });
                }
            }

我的ajax控制器是

<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

//error_reporting(0); class ajax extends CI_Controller {

    public function __construct() {
        parent::__construct();

        if (!$this->session->userdata('admin_logged_in')) {

            redirect('adminzone');
        }
        $this->load->model('doctor_model');
    }

    public function getstate(){
        echo $this->input->post();exit;
    }
     }

视图中的ajax函数

  $('#countryfield').change(function() {
        var passedvalue = $('#countryfield').val();
        var path = base_url+"ajax/getState";
        $.ajax({
            type: "POST",
            url: path,
            data: {'passedvalue': passedvalue},
            success: function(data) {
                if (data) {
                    alert(success);//task done on success
                }
            },
            error: function() {
                    alert('some error occurred');
                },
          });
      })

现在您可以在ajax.php控制器中编写函数。 函数名称应为getState

     public function getstate(){
       echo $this->input->post('passedvalue'); //now here you can perform your task
         exit;
       }

现在,您可以在控制器中执行任务,并回显要传递给视图的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM