diff --git a/app/templates/student.html b/app/templates/student.html
index ac77ae5..6d8f1f3 100644
--- a/app/templates/student.html
+++ b/app/templates/student.html
@@ -889,6 +889,22 @@ async function loadGoalOptions() {
document.getElementById('assign-start-date').value = new Date().toISOString().split('T')[0];
}
+// 评估日期联动:选择天数后自动计算日期,或直接选日期
+document.getElementById('assign-assessment-days').addEventListener('change', function() {
+ const days = parseInt(this.value);
+ if (days) {
+ const d = new Date();
+ d.setDate(d.getDate() + days);
+ document.getElementById('assign-assessment-date').value = d.toISOString().split('T')[0];
+ }
+});
+
+document.getElementById('assign-assessment-date').addEventListener('change', function() {
+ if (this.value) {
+ document.getElementById('assign-assessment-days').value = '';
+ }
+});
+
document.getElementById('confirm-assign-goal').addEventListener('click', async () => {
const goalId = document.getElementById('assign-goal-select').value;
const assessmentDays = document.getElementById('assign-assessment-days').value;