我正在研究调度程序应用程序。我正在使用Asp.NET MVC。
我有计算日程安排日期并向用户显示的脚本。
您可以在下面找到整个脚本功能:
<script>
function refreshExplain() {
$('#sceduleExplain').html('');
var locked = document.getElementById('lockStart').checked;
var valid = true;
var inteval = 86400000 * parseFloat(document.getElementById('autoFrequency').value);
var startDate = document.getElementById('autoStart').value;
startDate = startDate.substring(4);
var startHour = parseInt(document.getElementById('autoStartHour').value);
var sd = new Date(Date.parse(startDate));
//sd.set({ hour: startHour });
sd.setHours(startHour);
var filterStart = document.getElementById('periodStart').value;
filterStart = filterStart.substring(4);
var filterStartHour = parseInt(document.getElementById('periodStartHour').value);
var fsd = new Date(Date.parse(filterStart));
//fsd.set({ hour: filterStartHour });
fsd.setHours(filterStartHour);
//alert(fsd);
var filterEnd = document.getElementById('periodEnd').value;
filterEnd = filterEnd.substring(4);
var filterEndHour = parseInt(document.getElementById('periodEndHour').value);
var fed = new Date(Date.parse(filterEnd));
//fed.set({ hour: filterEndHour });
fed.setHours(filterEndHour);
//alert(fed);
var sDate = sd.getTime();
var sPeriod = sDate - fsd.getTime();
var ePeriod = sDate - fed.getTime();
if (sPeriod < ePeriod || sPeriod < 0 || ePeriod < 0) {
valid = false;
}
if (valid) {
for (i = 0; i < 5; i++) {
var date = new Date(sDate + (inteval * i));
if (locked) {
var psdate = new Date(sDate - sPeriod);
} else {
var psdate = new Date(sDate + (inteval * i) - sPeriod);
}
var pedate = new Date(sDate + (inteval * i) - ePeriod);
$('#sceduleExplain').append('<div class="col-3" style="font-weight: bold; margin-left: 146px;margin-right:100px;float:left">' + date.customFormat("#DDD# #D# #MMMM# #YYYY#, #hhh#:00") + '</div><div class="col-6">' + psdate.customFormat("#DDD# #D# #MMM# #YYYY#, #hhh#:00") + ' → ' + pedate.customFormat("#DDD# #D# #MMM# #YYYY#, #hhh#:00") + '</div><br />');
}
} else {
$('#sceduleExplain').html('<div style="font-weight: bold; margin-left: 146px;">Not a valid set of dates. Please make sure your start date is after the period for your report.</div>');
}
return false;
}
这里我根据用户输入计算 5 天的计划日期。我在这个视图中显示这个:
<li id="explainArea">
<div class="clear">
 </div>
<div class="col-3" style="font-weight: bold;margin-left: 146px; margin-right: 100px;
float: left;">
DELIVERY TIME</div>
<div class="col-6">
DATA ACCESS PERIOD</div>
<div class="clear">
 </div>
<div id="sceduleExplain" style="font-size: 7pt;">
</div>
<div class="clear">
 </div>
<input type="button" class="btn btn-primary btn-large" onclick="toggleActive(); return false;" style="margin-left: 146px; height: 30px;width : 8%; padding-top: 4px;" value="REFRESH" />
</li>
此处,在投放时间下方,我可以看到用户收到邮件的 5 日程安排日期。但我需要将这些日期存储在数据库中。
我尝试在httpost中使用formcollection,但它不起作用。
有人可以告诉我如何在控制器中获取此结果,因此我可以将这些结果保存在数据库中。
答案 0 :(得分:0)
获取日期并通过ajax将控制器发送给您
$.ajax({ type: 'POST', url: '...', data: { date: mydate } });
或添加输入字段和表单标记(我不会在您提供的代码中看到)。