2013-05-15 20 views
1

首先,我使用codeigniter框架,我是JS和AJAX的初學者,所以請耐心等待。

我讀this問題,所以我試着按照答案。

這是腳本(修訂版)

$(function() { 
      $("#datepicker").datepicker().click(function() { 
      $.ajax({ 
       type: 'POST', 
       url: "<?php echo base_url(); ?>backend/umat/add", 
       dataType: "json", 
       data: $('#form_daftar').serialize(), 
       success: function(data) { 
        console.log("Done"); 

       } 
      }); 
      return false; 
      }); 
     }); 

這是我的日期選擇器的HTML代碼:

<input type="text" id="datepicker" name="datepicker" 
value="<?php echo isset($umat['tanggal_lahir'])?$umat['tanggal_lahir']:""?>"/> 

我的問題是(修訂版)

  1. 我在上面的AJAX中提供的網址是否正確?
  2. 我應該如何將數據從AJAX傳遞到PHP(url: "<?php echo base_url(); ?>backend/umat/add")?

感謝您的幫助:d

回答

2

你已經在這裏錯過了什麼:

  1. 點擊事件是文檔準備好處理程序之外,這應該是裏面的文檔準備,這樣當頁面獲取準備好元素應該可以點擊。 。
  2. 你已經錯過了click事件的關閉});標籤(不要緊,但

所以試試這個:

$(function() { 
     $("#datepicker").datepicker(); 

     $("#datepicker").click(function() { 
      $.ajax({ 
       type: 'POST', 
       url: "<?php echo base_url(); ?>backend/umat/add", 
       dataType: "json", 
       data: {frmData : $('#form_daftar').serialize()}, // <----send this way 
       success: function(data) { 
        console.log(data.date); 
        // here data is the returned data from the specified url and make sure 
        // that url is generating a proper json structrue. 
        // suppose there is a key named date which holds the submitted date so 
        // data.date will get you the date. 
       } 
      }); 
     }); //<----you missed this closing of click function. 
    }); //<----------put everything before this closing of doc ready handler. 

雖然你可以過IT連鎖這樣的:

$(function(){ 
    $("#datepicker").datepicker().click(function() { 
     //......ajax function in click here 
    }); 
}); 

See a demo here

+0

你確定你可以連呢?我認爲'.datepicker()'返回datepicker對象,而不是jQuery對象。 –

+0

是的,我認爲我們可以將它鏈接起來,好的,讓我做一個演示。 – Jai

+1

@AustinBrunkhorst [**在這裏看到一個演示**](http://jsfiddle.net/t6nJP/)datepicker和點擊事件鏈接。 – Jai

1

另一種方法是使用日期選擇器內置的方法來觸發Ajax請求喜歡

$('#datepicker').datepick({ 
     dateFormat:"yyyy-mm-dd", 
     onSelect:function(){ 
      $.ajax({ 
      type: 'POST', 
      url: "<?php echo site_url('backend/umat/add'); ?>", 
      dataType: "json", 
      data: $('#form_daftar').serialize(), 
      success: function(data) { 
       console.log("Done"); 
      } 
      });         
     } 
}); 

檢查手冊或inbuild功能和回調您的日期選擇器的JS。

+0

感謝您的幫助,日曆再次工作。請參閱我的更新後的問題:D –

1

嘗試:

$(function() { 
      $("#datepicker").datepicker();   
      $("#datepicker").change(function() { 
       $.ajax({ 
        type: 'POST', 
        url: "<?php echo base_url(); ?>backend/umat/add", 
        dataType: "json", 
        data: $('#form_daftar').serialize(), 
        success: function(data) { 
         console.log("Done"); 

        } 
      }); 
     }); 

PHP獲取數據形式AJAX:

<?php 
$date = $_POST["datepicker"]; 
?> 
+0

感謝您的幫助,日曆再次工作請查看我更新的問題: d –