2016-07-12 59 views
1

我正在使用Angular 2,它的想法是將請求發送到我在api中完成的REST服務。如何捕獲在http獲取請求中使用的日期(使用pickadate)

我正在檢查Plunker的結果。我在捕獲選定的日期方面遇到了很多麻煩,所以我可以使用它來創建http請求。

所以我想知道如何做到這一點,或者如果有另一種更簡單的方法做到這一點。

我已經嘗試了一切在這裏看到的和其他一些東西,但沒有任何作品(和我的意思是,我沒有設法獲得一個變量的值,然後我可以使用.get )和.subscribe()發出請求到REST服務

這是更接近我有:

Calendar.js: 

function myCalendar(){ 
    $('.datepicker').pickadate({ 
     selectMonths: true, // Creates a dropdown to control month 
     selectYears: 15, // Creates a dropdown of 15 years to control year 
     onSet: function(context) { 
     console.log(new Date(context.select)); 
} 
    }); 
} 

calendar.ts

import {Component} from 'angular2/core'; 
@Component({ 
    selector: 'cal-inside', 
    template: `<input value="Input date" type="text" class="datepicker" onclick ="myCalendar()" > 
`, 
    directives: [] 
}) 
export class CalendarioDentro { 
    constructor() { 
     }  
} 

這選擇被稱爲這裏:

的src/basic_usage.html

[...] 
<form> 
      <cal-inside></cal-inside> 
      <check-inside></check-inside> 
      <boton></boton> 

     </form> 
    [...] 

這一切都沒有工作,我得到一個sidenav組件內部日曆,現在我想知道如何繼續下去,因爲我不能讓語法對於pickadate()函數來說,無論如何。

我目前只顯示在控制檯上,我確實已經點擊日期。除此之外,我無法完成任何其他工作,並且當我周圍尋找信息時,就好像它沒有完成API所說的那樣(根據我的理解,像這樣的var picker = $input.pickadate('picker') picker.get('select', 'yyyy/mm/dd'))。

那麼是否有一些關鍵的概念,我錯過了不能使用.get()正確?因爲無論使用什麼語法,我都會遇到錯誤,而當我不使用(使用類似於我使用start:語法處理的內容時,我什麼都不顯示)。

例如我看到jquery被使用,有時候,像這裏How can I consolidate pickadate initializer for multiple inputs on one page?,我可以將它轉換成我需要的東西。

回答

1

似乎並不像其他人有這麼多的麻煩,但因爲我瘋了試圖正確地得到它,我把它放在這裏,以防萬一:

這個當前工作並顯示在控制檯的日期。待定的工作將是做http獲取它自己。

var foo; 
function CalendarMaterializeCSS(){ 
$('.datepicker').pickadate({ 
    onSet: function(context) { 
     foo = new Date(context.select); 
     var curr_date = foo.getDate(); 

     var curr_month = foo.getMonth(); 

     var curr_year = foo.getFullYear(); 
     var dateFormated=(curr_date + "-" + curr_month + "-" + curr_year); 
     console.log(dateFormated); 

    } 
}); 
相關問題