Untitled
unknown
plain_text
a year ago
3.2 kB
7
Indexable
import React, { useState } from 'react'; const Form = ({ addStudent }) => { const [fullname, setFullname] = useState(''); const [birthDate, setBirthDate] = useState(''); const [gender, setGender] = useState(''); const [programStudy, setProgramStudy] = useState(''); const handleSubmit = (e) => { e.preventDefault(); const faculty = getFacultyByProgramStudy(programStudy); addStudent({ fullname, birthDate, gender, faculty, programStudy }); setFullname(''); setBirthDate(''); setGender(''); setProgramStudy(''); }; const getFacultyByProgramStudy = (programStudy) => { switch (programStudy) { case 'Ekonomi': case 'Manajemen': case 'Akuntansi': return 'Fakultas Ekonomi'; case 'Administrasi Publik': case 'Administrasi Bisnis': case 'Hubungan Internasional': return 'Fakultas Ilmu Sosial dan Politik'; case 'Teknik Sipil': case 'Arsitektur': return 'Fakultas Teknik'; case 'Matematika': case 'Fisika': case 'Informatika': return 'Fakultas Teknologi Informasi dan Sains'; default: return ''; } }; return ( <form onSubmit={handleSubmit}> <input data-testid="name" type="text" placeholder="Fullname" value={fullname} onChange={(e) => setFullname(e.target.value)} /> <input data-testid="date" type="date" value={birthDate} onChange={(e) => setBirthDate(e.target.value)} /> <select data-testid="gender" value={gender} onChange={(e) => setGender(e.target.value)}> <option value="">Select Gender</option> <option value="Male">Male</option> <option value="Female">Female</option> </select> <select data-testid="prody" value={programStudy} onChange={(e) => setProgramStudy(e.target.value)}> <option value="">Select Program Study</option> <option value="Ekonomi">Ekonomi</option> <option value="Manajemen">Manajemen</option> <option value="Akuntansi">Akuntansi</option> <option value="Administrasi Publik">Administrasi Publik</option> <option value="Administrasi Bisnis">Administrasi Bisnis</option> <option value="Hubungan Internasional">Hubungan Internasional</option> <option value="Teknik Sipil">Teknik Sipil</option> <option value="Arsitektur">Arsitektur</option> <option value="Matematika">Matematika</option> <option value="Fisika">Fisika</option> <option value="Informatika">Informatika</option> </select> <button data-testid="submit" type="submit">Add Student</button> </form> ); }; export default Form;
Editor is loading...
Leave a Comment