javascript数据不会在php codeigniter中显示

时间:2017-05-14 14:51:01

标签: javascript php ajax codeigniter

我正在尝试从我的控制器获取ajax数据来查看。但是javascript代码似乎执行得不好。这是我的剧本

<script type="text/javascript">
            function view_data(act){
                  var w = $('#origin').val();
                  var x = $('#destination').val();
                  var y = $('#weight').val();
                  var z = $('#courier').val();

                  if(w == "" && x == "" && y == "" && z == "" ){
                    alert("I am an alert box!");
                  }else{
                    $.ajax({
                      url: "<?php echo base_url()?>Cart/getCost",
                      type: "GET",
                      data : {origin: w, destination: x, berat: y, courier: z},
                      success: function (ajaxData){
                          $("#result").html(ajaxData);
                      }
                    });
                  }



              };
          </script>

对于orgin和目的地来自选项选择
以及来自输入文本的重量和快递。 这是我的控制器

function getCost()
{
    $origin = $this->input->get('origin');
    $destination = $this->input->get('destination');
    $weight = $this->input->get('weight');
    $courier = $this->input->get('courier');

    $data = array('origin' => $origin,
                    'destination' => $destination,
                    'weight' => $weight,
                    'courier' => $courier

    );

    $this->load->view('rajaongkir/getCost', $data);
}}

问题是,数据不会出现在#result视图中。

2 个答案:

答案 0 :(得分:0)

将您的网址更改为:

 url: "<?php echo base_url();?>Cart/getCost",

在ajax中你必须提供完整的url地址。 请将加载视图替换为var_dump,并在ajax成功部分console.log(result)中显示我们在控制器中的内容。
第二个:
另一种方法是将您的视图设置为变量(我将其命名为$ Datares),然后在其后添加此代码

$this->set_output($Datares); 

答案 1 :(得分:0)

这将有助于你

<script type="text/javascript">
            function view_data(act){
                  var w = $('#origin').val();
                  var x = $('#destination').val();
                  var y = $('#weight').val();
                  var z = $('#courier').val();

                  if(w == "" && x == "" && y == "" && z == "" ){
                    alert("I am an alert box!");
                  }else{
                    $.ajax({
                      url: "Cart/getCost",
                      type: "GET",
                      data : {origin: w, destination: x, berat: y, courier: z},
                      success: function (ajaxData){
                          $("#result").html(ajaxData);
                      }
                    });
                  }
              };
</script>

function getCost()
{
    $origin = $this->input->get('origin');
    $destination = $this->input->get('destination');
    $weight = $this->input->get('weight');
    $courier = $this->input->get('courier');

    $data = array('origin' => $origin,
                    'destination' => $destination,
                    'weight' => $weight,
                    'courier' => $courier

    );

    echo $data;
    exit;
}