Ich erhalte einen Syntaxfehler. Das Sagen meines Codes funktioniert möglicherweise nicht, bis ich diesen Fehler behebe, aber ich sehe nichts falsch damit. Die Fehlerzeile zeigt darauf let weekAgo = new Date();
aber das sieht für mich richtig aus. Übersehe ich etwas? Es verursacht auch den Text in meinem Datepicker "from" und "to", um nicht automatisch angezeigt zu werden. Jede Hilfe würde sehr geschätzt werden. Der Text erscheint in my fiddle aber aus irgendeinem Grund nicht in meiner Anwendung. Aber die Anwendung wirft diesen Syntaxfehler. Also jede Hilfe wäre sehr nett!JS Funktionssyntaxfehler mit Datepicker
<script>
(function() {
//move these out since they don't need to
const today = new Date();
let weekAgo = new Date();
weekAgo.setDate(today.getDate() - 7);
const $from = $("#StartDate");
const $to = $("#EndDate");
$(function() { //DOM-loaded
//these don't change
const reportFields = $('#location, #locationbtns, #locationtextarea, #chosendates, #submitbtn, #formattype');
const employeeFields = $('#employeelist, #employeelistbtns, #employeelisttextarea');
const loc = $("#loc");
const EmployeeName = $("#EmployeeName");
const selectedElement = $('#selected');
const selected1Element = $('#selected1');
const reportType = $('#reporttype');
const generatereportform = $("form[name=generatereport]");
$(document).click(function(clickEvent) {
switch (clickEvent.target.id) {
case 'add':
setLocationOptionsSelected(true);
break;
case 'rem':
setLocationOptionsSelected(false);
break;
case 'add1':
setSelectedOnEmployeeOptions(true);
break;
case 'rem1':
setSelectedOnEmployeeOptions(false);
break;
}
});
$(document).change(function(changeEvent) {
switch (changeEvent.target.id) {
case 'reporttype':
handleReportTypeChange();
break;
case 'loc':
handleLocationChange();
break;
case 'EmployeeName':
handleEmployeeNameChange();
break;
}
});
function handleReportTypeChange() {
var value = reportType.val();
if (value === "checklistreports") {
generatereportform[0].reset();
reportFields.show();
loc.prop('required', true);
employeeFields.show();
generatereportform.attr("action", "index.cfm?content=reportsassociate");
EmployeeName.prop('required', true);
} else if (value === "locationreports") {
generatereportform[0].reset();
reportFields.show();
loc.prop('required', true);
employeeFields.hide();
generatereportform.attr("action", "index.cfm?content=reportslocation");
EmployeeName.prop('required', false);
} else {
generatereportform[0].reset();
reportFields.hide();
loc.prop('required', false);
employeeFields.hide();
generatereportform.attr("action", "#");
EmployeeName.prop('required', false);
}
resetDatePickers();
}
function dateSelectHandler(dateText) {
if (this.id == 'StartDate') {
$to.datepicker("option", "minDate", dateText);
} else {
$from.datepicker("option", "maxDate", dateText);
}
}
function resetDatePickers() {
let datePickerConfig = {
changeMonth: true,
maxDate: today,
onSelect: dateSelectHandler
};
$from.datepicker(datePickerConfig).datepicker('setDate', weekAgo);
$to.datepicker(Object.assign(datePickerConfig, {
minDate: weekAgo
})).datepicker('setDate', today);
}
function handleLocationChange() {
var selected = [];
loc.find("option:selected").each(function() {
selected.push($(this).text());
});
selectedElement.val(selected.join("\n"));
}
function setLocationOptionsSelected(selected) {
loc.find("option").prop("selected", selected);
loc.change();
}
function setSelectedOnEmployeeOptions(selected) {
EmployeeName.find("option").prop("selected", selected);
EmployeeName.change();
}
function handleEmployeeNameChange() {
var selected = [];
EmployeeName.find("option:selected").each(function() {
selected.push($(this).text());
});
selected1Element.val(selected.join("\n"));
}
});
})();
</script>
Sie haben erwähnt, welche Linie die Syntaxfehler Punkte, aber Was sagt der Syntaxfehler eigentlich? –
Alles, was Dreamweaver sagt, ist ein Syntaxfehler in dieser Zeile. "Codehinweis funktioniert möglicherweise erst, wenn Sie diesen Fehler behoben haben." –
'const today = new Date();' In welchem Browser laufen Sie? 'const' ist ES6. – Keith