我使用fullcalendar将日期时间上传到我的数据库,我有以下脚本
$dialogContent.dialog({
modal: true,
title: "New Listing",
close: function() {
$dialogContent.dialog("destroy");
$dialogContent.hide();
},
buttons: {
save : function () {
calEvent.id = id;
id++;
calEvent.start = new Date(startField.val());
calEvent.end = new Date(endField.val());
calEvent.title = titleField.val();
calEvent.body = bodyField.val();
$.ajax({
type: "POST",
url: "addnew.php",
data: (
{
'st':new Date(startField.val()),
'et':new Date(endField.val()),
'title':titleField.val(),
'body':bodyField.val()
}
),
success: function(msg){
alert( "Data Saved: " + msg );
}
});
但是我的日期值根本没有发送。它的错,但我不知道如何或为什么。
答案 0 :(得分:0)
Date构造函数不解析任何旧的日期字符串。使用fullCalendar的解析函数(假设您使用的是ISO8061格式):
答案 1 :(得分:0)
您在服务器端获得的日期值是多少? 可能是,您应该发送简单的数据类型,如UNIX时间戳或使用.serialize()为您的表单。
答案 2 :(得分:0)
我一直在玩ParseDate,但我只是没有得到结果,似乎我的概念都错了;
dayClick : function(date, allDay, jsEvent, view) {
var $dialogContent = $("#event_edit_container");
y = date.getFullYear();
m = date.getMonth();
d = date.getDate();
h1 = date.getHours();
m1 = date.getMinutes();
h2 = h1 + 1;
m2 = m1;
calEvent = { title: 'New Calendar Event', editable:true, distributor: '', etype: '', location: '', website: '', start: new Date(y, m, d, h1, m1), end: new Date(y, m, d, h2, m2), allDay: false };
$calendar.fullCalendar("renderEvent",calEvent, true);
resetForm($dialogContent);
var startField = $dialogContent.find("select[name='start']").val(calEvent.start);
var endField = $dialogContent.find("select[name='end']").val(calEvent.end);
var titleField = $dialogContent.find("input[name='title']").val(calEvent.title);
var distributorField = $dialogContent.find("input[name='distributor']").val(calEvent.distributor);
var etypeField = $dialogContent.find("select[name='etype']").val(calEvent.etype);
var locationField = $dialogContent.find("input[name='location']").val(calEvent.location);
var websiteField = $dialogContent.find("input[name='website']").val(calEvent.website);
var bodyField = $dialogContent.find("textarea[name='body']");
//var start_date = eval($.fullCalendar.parseDate(this_one['start']).getTime()) / 1000;
$dialogContent.dialog({
modal: true,
title: "New Listing",
close: function() {
$dialogContent.dialog("destroy");
$dialogContent.hide();
},
buttons: {
save : function () {
calEvent.id = id;
id++;
calEvent.start = $.fullCalendar.parseDate(new Date(startField.val()));
calEvent.end = new Date(endField.val());
calEvent.title = titleField.val();
calEvent.distributor = distributorField.val();
calEvent.etype = etypeField.val();
calEvent.location = locationField.val();
calEvent.website = websiteField.val();
calEvent.body = bodyField.val();
//$.fullCalendar.parseDate(calEvent.start);
//calEvent.st = start_date.val();
//$.fullCalendar.parseDate(startField.val());
$.ajax({
输入:“POST”, url:“addnew.php”, 数据:( { 'ST':calEvent.start, 'et':new Date(endField.val()), '标题':titleField.val(), '分配器':distributorField.val(), 'VLAN时':etypeField.val(), '位置':locationField.val(), '网站':websiteField.val() '主体':bodyField.val() } ),
成功:函数(msg){ alert(“Data Saved:”+ msg); } });
我正处于一个砖墙上,我已经尝试了大量的hte代码,但它只是猜测工作。如果有一个日期文件被传递或甚至打印出来的例子,我真的很感激它,看看它应该如何工作。在这种情况下,试验和错误对我不起作用。 感谢
答案 3 :(得分:-1)
已经很晚了,我暂时没有使用过Javascript,但肯定是输入。值不是input.val()