내 자바 스크립트 코드가 dom [중복]에 연결되지 않습니다.
Aug 19 2020
나는 소수를 인식하는 함수를 만들어야하는 도전을 받았으며, 내 const 번호를 입력에 연결하고 내 함수를 버튼에 연결할 때까지 콘솔에서 훌륭하게 작동했습니다.
const btn = document.querySelector('.btn1')
if (btn) {
btn.addEventListener('click', isitPrime)
}
function isitPrime() {
const number = document.querySelector('.input1').innerHTML
const answer = document.querySelector('.answer')
let isPrime = true
for (let i = 2; i < number; i++) {
if (number % i === 0) {
isPrime = false
answer.innerHTML = (`${number} is not prime ${number} can be divided by ${i}`) } if (isPrime) { answer.innerHTML = (`${number} is prime`)
}
}
}
<input type="text" class="input1">
<button class="btn1">click here</button> <br/><br/>
<div class="answer"></div>
이 문제를 해결하는 방법?
답변
3 Namysh Aug 19 2020 at 04:58
입력 값을 얻으려면 다음 과 같이 value
속성 대신 속성 을 사용해야합니다 innerHtml
.
const btn = document.querySelector('.btn1')
if(btn){
btn.addEventListener('click', isitPrime)
}
function isitPrime(){
// here we get 'value' property instead of 'innerHtml' property
const number = document.querySelector('.input1').value
const answer = document.querySelector('.answer')
let isPrime = true
for(let i = 2; i < number; i++){
if(number % i === 0){
isPrime = false
answer.innerHTML = (`${number} is not prime ${number} can be divided by ${i}`) } if(isPrime){ answer.innerHTML = (`${number} is prime`)
}
}
}
<input type="text" class="input1">
<button class="btn1">click here</button> <br/><br/>
<div class="answer"></div>
1 AnupShrestha Aug 19 2020 at 05:01
document.querySelector ( '. input1'). innerHTML 이것은 잘못되었습니다.
document.querySelector ( '. input1'). value를 사용해야합니다.