<script>
function createErrorCodeElement () { // error-log 라는 클래스 생성 및 스타일 지정
let newP = document.createElement('p')
const tiv = document.querySelector('.div')
tiv.appendChild(newP)
newP.classList.add('error-log')
newP.innerHTML = '유효한 내용을 입력해주세요'
newP.style.color = 'red'
newP.style.fontSize = '12px'
RemoveErrorCodeElement() // 끝난 뒤 함수 호출
}
function RemoveErrorCodeElement () { // 3초 뒤 엘리먼트 삭제
setTimeout(function () { // 인스턴스 함수로 설정
let errorLogElement = document.querySelector('.error-log')
if ( errorLogElement )
errorLogElement.remove()
}, 3000) // 시간 설정
}
</script>
해석해보자면, p 태그를 div 태그 내에 특정 이벤트로 지정해놓고( onsubmit 의 조건 같은 걸로 ),
해당 이벤트 함수가 호출되었다면 CreateErrorCodeElement가 실행되어 요소를 생성한 뒤,
RemoveErrorCodeElement가 호출되어 3초로 설정된 setTimeout() 를 통해 인스턴스 함수로 생성한 요소를 제거 하는 겁니다.
☆ 저는 이 방법이 무한하게 반복 될 줄 알았건만, 안되더군요. 그래서 할 수 없이 미리 style을 지정해놓고 조건에 따라 className을 변경하는 것으로 변경하려고 합니다.
REST API - AXIOS 를 사용하는데에 자꾸 localhost에서만 해당 api를 가져올 수 없다고, CORS 에러가 발생하길래 어쩔 수 없이 사용하였다.
Talend API를 사용하여 나온 결과
해당 내용처럼 잘 출력된다. 하지만 로컬에서는 안됐다는 점..
■ 에러내용
Access to XMLHttpRequest at 'request url' from origin 'http://localhost:8081' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.