teacher-student-selector.blade.php 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <div class="space-y-4">
  2. {{-- 选择老师 --}}
  3. <div class="form-control w-full">
  4. <label class="label">
  5. <span class="label-text font-medium">
  6. {{ $teacherLabel }}
  7. @if($required)
  8. <span class="text-error">*</span>
  9. @endif
  10. </span>
  11. </label>
  12. <select
  13. wire:model.live="selectedTeacherId"
  14. class="select select-bordered w-full"
  15. @if($required) required @endif
  16. >
  17. <option value="">{{ $teacherPlaceholder }}</option>
  18. @foreach($teacherOptions as $teacherId => $teacherName)
  19. <option value="{{ $teacherId }}">{{ $teacherName }}</option>
  20. @endforeach
  21. </select>
  22. @if($teacherHelperText)
  23. <label class="label">
  24. <span class="label-text-alt text-info">{{ $teacherHelperText }}</span>
  25. </label>
  26. @endif
  27. @if($selectedTeacherId)
  28. <label class="label">
  29. <span class="label-text-alt text-success">
  30. <svg class="w-3 h-3 inline mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
  31. <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"></path>
  32. </svg>
  33. 已选择:{{ $selectedTeacherId ? $teacherOptions[$selectedTeacherId] ?? '未选择' : '未选择' }}
  34. </span>
  35. </label>
  36. @endif
  37. </div>
  38. {{-- 选择学生 --}}
  39. <div class="form-control w-full">
  40. <label class="label">
  41. <span class="label-text font-medium">
  42. {{ $studentLabel }}
  43. @if($required)
  44. <span class="text-error">*</span>
  45. @endif
  46. </span>
  47. </label>
  48. <select
  49. wire:model.live="selectedStudentId"
  50. wire:change="$refresh"
  51. class="select select-bordered w-full"
  52. @if(empty($selectedTeacherId)) disabled @endif
  53. @if($required) required @endif
  54. >
  55. <option value="">
  56. @if(empty($selectedTeacherId))
  57. 请先选择老师
  58. @else
  59. {{ $studentPlaceholder }}
  60. @endif
  61. </option>
  62. @foreach($studentOptions as $studentId => $studentName)
  63. <option value="{{ $studentId }}">{{ $studentName }}</option>
  64. @endforeach
  65. </select>
  66. @if($studentHelperText)
  67. <label class="label">
  68. <span class="label-text-alt text-info">{{ $studentHelperText }}</span>
  69. </label>
  70. @endif
  71. @if($selectedStudentId)
  72. <label class="label">
  73. <span class="label-text-alt text-success">
  74. <svg class="w-3 h-3 inline mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
  75. <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"></path>
  76. </svg>
  77. 已选择:{{ $selectedStudentId ? $studentOptions[$selectedStudentId] ?? '未选择' : '未选择' }}
  78. </span>
  79. </label>
  80. @elseif($selectedTeacherId && empty($studentOptions))
  81. <label class="label">
  82. <span class="label-text-alt text-warning">
  83. <svg class="w-3 h-3 inline mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
  84. <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-2.5L13.732 4c-.77-.833-1.964-.833-2.732 0L4.082 15.5c-.77.833.192 2.5 1.732 2.5z"></path>
  85. </svg>
  86. 该老师暂无学生
  87. </span>
  88. </label>
  89. @endif
  90. </div>
  91. </div>