개발자

제 코드, 뭐가 문제일까요?

2024년 07월 11일조회 82

https://github.com/get1092/Trade/blob/main/quest/53/53quest.html 완전 초짜여서 여기저기 구글링해보고 챗gpt도 써봤는데 더 이상은 무리네요.. 현재 cbt타입의 웹사이트를 만들고 있습니다. 원하는기능은 3개입니다. 1. 문제에 답을 입력하면 omr에도 연동되어서 같이 입력되게 되어야함 2. 답안josn파일(53anwer.json)을 토대로 문제를 다 풀면 채점해서 점수가 나오게함 + 오답은 omr에 빨간색으로 칠할것 답안 josn : https://github.com/get1092/Trade/blob/main/quest/53/53anwer.json 3. omr에 문제버튼 누르면 해당번호로 문제가 이동되는것 이거면 되는데 초보자인 저에게는 너무 어려웠나봅니다. 혹시 어떻게 하면 되는지 알 수 있을까요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 0

답변이 없을 때 보이는 아이콘

첫 답변을 기다리고 있어요.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 07월 11일

보낸 코드 내용을 확인할 수 없지만, 원하는 기능에 대해서는 아래와 같이 작업해 볼 수 있을 것 같습니다: 1. 문제에 답을 입력하면 OMRI도 연동되어서 같이 입력되게 하려면, input 이벤트를 활용해 볼 수 있습니다. 문제의 답안란(input field)에서 발생하는 input 이벤트를 감지한 후 해당 이벤트가 발생하면 OMR의 상응하는 위치에 답안을 표시하는 방식입니다. ```javascript // html 요소 선택 let myInput = document.querySelector("#myInput"); let myOmr = document.querySelector("#myOmr"); myInput.addEventListener("input", function (e) { // e.target.value 는 입력된 값 myOmr.textContent = e.target.value; }); ``` 2. 답안 json 파일을 토대로 채점하고 점수를 출력하는 것은 다음과 비슷하게 할 수 있습니다. ```javascript fetch('53anwer.json') .then(response => response.json()) .then(data => { // data 가 json 파일 내용 // 채점 로직 : 답안체크 후 점수 계산 let score = 0; for(let i=0; i<data.length; i++) { if(myAnswers[i] == data[i]) { score += 1; } else { // 오답 처리: 여기서는 omr 의 해당 부분을 빨간색으로 처리하는 로직을 추가 // myOmr.elements[i].style.color = 'red'; // 예시 } } // 점수 출력 console.log(score); }) .catch(error => console.error('Error:', error)); ``` 3. OMR에 문제 버튼을 누르면 해당 번호로 문제가 이동하는 것은 앵커를 활용할 수 있습니다. ```html <!--문제 부분--> <div id="question1"> ... </div> <!--omr 부분--> <button onclick="location.href='#question1'">1</button> ``` 위 예시들은 단순하게 구현한 기본 코드들이므로, 실제 구현에는 웹사이트의 구조와 요구 사항에 맞게 적절히 변경 및 추가 작업이 필요합니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!