簡體   English   中英

Codeigniter Ajax請求不起作用

[英]Codeigniter ajax request not working

我向控制器發送一個請求,當我向控制器發出警報(電話)時,它是顯示值,但在控制器中它顯示為空,

但是其他date1和date2正常工作。

<script type="text/javascript">
$(document).ready(function(){
$('#buttonsearch').click(function(){
var date1=$("#date1").val(); 
var date2=$("#date2").val();vartele=$("#tele").val();
 alert(tele);
 $.ajax(
 {
 type: "POST",
 url: '<?php echo site_url('totalorders/orderajax'); ?>',
 data: 'date1=' + date1 + '&date2='+ date2 +'& tele ='+ tele,
 success: function(data)
 {
 alert(data);
 $("#customers2").html(data);
 }}); });});
</script>

控制器代碼

 public function orderajax()
    {

         $this->load->database();
        $this->load->library('session');
        $date1=$this->input->post('date1');
        $date2=$this->input->post('date2');
        $tele=$this->input->post('tele');
        $data['tele']=$tele;
        if(($date1 != '') && ($date2 != '') && ($tele == ''))
        {

            $data['orders'] = $this->orderdetails->get_ajaxsearchorders($date1,$date2,$tele);
        }
        else 
        {
            $sss=$tele;
            $data['orders'] = $this->orderdetails->get_ajaxsearchorders1($sss);
        }
        $this->load->view('orderviewajax',$data);
    }

你們能幫我哪里錯了..

注意:只有'tele'值不起作用date1,date2起作用。

在關鍵字var和變量名tele之間留出空格。 檢查以下行。

var tele = $("#tele").val();

在變量聲明中添加空間。 在發布數據時不要給空格。 例如:

             type:"POST",
             url:"<?php echo base_url(); ?>staff_activity/date_report",
             data:'year='+nep_year+'&month='+nep_month,

您的根本問題是在此部分的查詢字符串中嵌入的空間:

... +'& tele ='+ tele

刪除&tele之間的空間...

... +'&tele ='+ tele

但是,您不需要收集每個值並手動構造查詢字符串。

只需使用jQuery .serialize()收集表單的值並自動構造查詢字符串。

data:  $('form').serialize(),

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM