Ich versuche, eine Dropdown-Liste zu erstellen, die automatisch Daten in Textfelder eingibt.Javascript - Variable vorherigen Arbeitstag
Die Option "LBD" gibt derzeit das gestrige Datum zurück, aber ich möchte, dass es das Datum des letzten Geschäftstages zurückgibt. Wenn heute Montag ist, würde es das Datum des Freitags zurückgeben, wenn heute Dienstag ist, würde es das Datum von Montag zurückgeben. Und so weiter und so fort.
Dies ist, was ich bisher habe:
Javascript:
<script>
$(document).ready(function() {
$("#datetype option").filter(function() {
return $(this).val() == $("#datepickstart").val();
return $(this).val() == $("#datepickend").val();
}).attr('selected', true);
var d = new Date();
var yesterday = (d.getMonth() + 1) + "/" + (d.getDate() - 1) + "/" + d.getFullYear();
var today = (d.getMonth() + 1) + "/" + d.getDate() + "/" + d.getFullYear();
var fdm = (d.getMonth() + 1) + '/01/' + d.getFullYear();
var fdy = '01/01/' + new Date().getFullYear();
$("#datetype").on("change", function() {
var selectedVal = $(this).find("option:selected").attr("value");
if (selectedVal == 'LBD') {
$("#datepickstart").val((yesterday));
$("#datepickend").val((yesterday));
}
if (selectedVal == 'MtD') {
$("#datepickstart").val(fdm);
$("#datepickend").val(today);
}
if (selectedVal == 'YtD') {
$("#datepickstart").val(fdy);
$("#datepickend").val(today);
}
});
})
</script>
html:
<select id="datetype" name="datetype">
<option value="">Please select...</option>
<option value="LBD">LBD</option>
<option value="MtD">MtD</option>
<option value="YtD">YtD</option>
</select>
<input type="text" id="datepickstart" name="datepickstart" value="">
<input type="text" id="datepickend" name="datepickend" value="">
Der Code ist einfach 'während {date.setDate (Date.getDate() - 1)} (isBusinessDay (Datum)!) ', der schwierige Teil ist das Schreiben der 'isBusinessDay'-Funktion. – zzzzBov