2013-08-31 150 views
0

我试图从jquery中使用datepicker,但我不知道如何从中获取值。如何从DatePicker中获取价值

我使用这个代码日期选择视图:

JQ.DatePicker = Em.View.extend(JQ.Widget, { 
uiType: 'datepicker', 
uiOptions: ['disabled', 'altField', 'altFormat', 'appendText', 'autoSize', 'buttonImage', 'buttonImageOnly', 'buttonText', 'calculateWeek', 'changeMonth', 'changeYear', 'closeText', 'constrainInput', 'currentText', 'dateFormat', 'dayNames', 'dayNamesMin', 'dayNamesShort', 'defaultDate', 'duration', 'firstDay', 'gotoCurrent', 'hideIfNoPrevNext', 'isRTL', 'maxDate', 'minDate', 'monthNames', 'monthNamesShort', 'navigationAsDateFormat', 'nextText', 'numberOfMonths', 'prevText', 'selectOtherMonths', 'shortYearCutoff', 'showAnim', 'showButtonPanel', 'showCurrentAtPos', 'showMonthAfterYear', 'showOn', 'showOptions', 'showOtherMonths', 'showWeek', 'stepMonths', 'weekHeader', 'yearRange', 'yearSuffix'], 
uiEvents: ['create', 'beforeShow', 'beforeShowDay', 'onChangeMonthYear', 'onClose', 'onSelect'], 
tagName: 'input', 
type: "text", 
attributeBindings: ['type', 'value'] 
}); 

我的扩展视图:

App.DatePicker = JQ.DatePicker.extend({ 
     dateFormat: 'yy-mm-dd', 
     classNames: ['form-control'], 
     onSelect: function(dateText, inst) { 
     this.value = dateText; 
     this.set('value',dateText); 
     } 
    }); 

在HTML页面中我加:

{{#view App.DatePicker valueBinding="date"}}{{/view}} 

我的控制器:

App.MainController = Ember.ArrayController.extend({ 
    templateName: "main", 
    date: null, 

    saveDate: function(value){ 
     console.log("saveDate"); 
     this.date = value; 
    }, 

    showData: function(){ 
     alert(this.date); 
    }, 

}); 

我在{{view App.DatePicker}}中测试了其他一些选项,但我不明白这些视图和控制器是如何工作的。有人可以帮我解决这个问题,或者给我发送一些关于这个主题的好的指南的链接?

回答

1

所以我想通了。

添加attributeBindings: “值”]来App.DatePicker:

App.DatePicker = JQ.DatePicker.extend({ 
     dateFormat: 'yy-mm-dd', 
     classNames: ['form-control'], 
     onSelect: function(dateText, inst) { 
     this.value = dateText; 
     this.set('value',dateText); 
     }, 

     attributeBindings: ["value"] 

    }); 
+0

请接受您自己的答案,以免它出现在Ember的“未答复”问题列表中。谢谢! – jacefarm

0

尝试:

var date = $('#date').datepicker('getDate'); 

文档: ​​

+0

也许一个愚蠢的问题:在哪里? –