Javascript 如何在Meteor中提交和保存bootstrap datepicker的值?
我正在Meteor中制作一个应用程序的原型,在使用datepicker时遇到了问题。我在中创建了一个最小的示例 单击并保存到数据库时,如何从日期选择器获取所选值?我的事件代码在Javascript 如何在Meteor中提交和保存bootstrap datepicker的值?,javascript,mongodb,meteor,bootstrap-datepicker,Javascript,Mongodb,Meteor,Bootstrap Datepicker,我正在Meteor中制作一个应用程序的原型,在使用datepicker时遇到了问题。我在中创建了一个最小的示例 单击并保存到数据库时,如何从日期选择器获取所选值?我的事件代码在client/app/js的第8行。我正在使用一个input标记作为日期选择器的一部分,但是由于没有submit按钮,我不确定是否确实在更改日期。onchange在这里工作吗 Template.Valuation.events({ 'onchange #selectedDate': function(e) {
client/app/js
的第8行。我正在使用一个input
标记作为日期选择器的一部分,但是由于没有submit
按钮,我不确定是否确实在更改日期。onchange
在这里工作吗
Template.Valuation.events({
'onchange #selectedDate': function(e) {
e.preventDefault();
var valuationId = this._id;
var selectedDate = $(e.target).find('[name=selectedDate]').val();
Valuations.update(valuationId, {$set: {valuationDate: selectedDate}}, function () {
});
}
});
onchange在这里有用吗
Template.Valuation.events({
'onchange #selectedDate': function(e) {
e.preventDefault();
var valuationId = this._id;
var selectedDate = $(e.target).find('[name=selectedDate]').val();
Valuations.update(valuationId, {$set: {valuationDate: selectedDate}}, function () {
});
}
});
不,没有。您需要在功能中收听事件:
Template.Valuation.onRendered(function() {
$('#valuation .input-group.date').datepicker({
todayBtn: "linked",
orientation: "top auto",
daysOfWeekDisabled: "0,6",
todayHighlight: true,
autoclose: true,
format: 'yyyy-mm-dd'
});
var self = this;
$('#valuation .input-group.date').datepicker().on('changeDate', function(ev) {
var valuationId = self.data._id;
var selectedDate = $('#selectedDate').val();
Valuations.update(valuationId, {
$set: {
valuationDate: selectedDate
}
}, function() {});
});
});
我还发现您的valuationPrice
template助手中有一个bug。这可能会解决它:
valuationPrice: function() {
var valuation = Valuations.findOne({
_id: this._id
});
var valuationDate = valuation.valuationDate;
var valuationPrice = 0;
_.each(valuation.closingPrices, function(closingPrice) {
if (closingPrice.date == valuationDate) valuationPrice = closingPrice.close;
});
return valuationPrice;
}
这里是最新的