2017-05-23 1 views
0

저는 방금 자바 스크립트를 배우기 시작했습니다. 양식에 입력 된 숫자에 따라 일부 텍스트를 빨간색 또는 파란색으로 바꿀 조건을 만들려고하는데 작동하지 않고 그 이유를 알 수 없습니다. 입력 할 때마다 텍스트가 파란색으로 바뀔 때마다 입력됩니다. 입력 한 번호가이 내가 가지고있는 적은 50보다 경우는 빨간색으로해야합니다자바 스크립트 양식에 조건문 연결

var form = document.querySelector("form"); 
 
form.addEventListener("submit", function(event) { 
 
    event.preventDefault(); 
 
}); 
 

 
var input = document.getElementById("input"); 
 

 
var submit = document.getElementById("submit"); 
 

 
submit.onclick = function() { 
 
    if (input >= 50) { 
 
    document.getElementById("color").style.color = "red"; 
 
    } else { 
 
    document.getElementById("color").style.color = "blue"; 
 
    }; 
 
}
<h3 id="color">Conditional Example</h3> 
 
<form name="form"> 
 
    <input type="text" id="input"><br> 
 
    <button type="submit" id="submit">Submit</button> 
 
</form>

+0

HTML 요소는 수를 초과 할 수 없다. – SLaks

+4

입력에 입력 된 값을 가져 와서 숫자로 변환하려면'parseInt (input.value, 10)'을 사용하십시오. – Barmar

답변

0

당신은 입력 요소의 값이 필요합니다.

var form = document.querySelector("form"); 
 
form.addEventListener("submit", function(event) { 
 
    event.preventDefault(); 
 
}); 
 
var submit = document.getElementById("submit"); 
 
submit.onclick = function(event) { 
 
    // getting the value after click of the button 
 
    var input = document.getElementById("input").value; 
 

 
    if (input >= 50) { 
 
    document.getElementById("color").style.color = "red"; 
 
    } else { 
 
    document.getElementById("color").style.color = "blue"; 
 
    }; 
 
}
<h3 id="color">Conditional Example</h3> 
 
<form name="form"> 
 
    <input type="text" id="input"><br> 
 
    <button type="submit" id="submit">Submit</button> 
 
</form>

+0

고맙습니다 !!! 그것으로 해결되었습니다. 정말 도움이되었습니다, 다시 한 번 감사드립니다! – sbontheroad

0

document.getElementById("input") 실제 요소를 가져옵니다. 해당 요소의 값이이므로 document.getElementById("input").value을 사용하십시오. 또한 모든 클릭에 값을 확인하려면, 그래서 당신은 당신의 클릭 핸들러 내에서 그 라인을 이동해야합니다

var form = document.querySelector("form"); 
 
form.addEventListener("submit", function(event) { 
 
    event.preventDefault(); 
 
}); 
 

 
var submit = document.getElementById("submit"); 
 

 
submit.onclick = function() { 
 
    var input = parseInt(document.getElementById("input").value, 10); 
 
    if (input >= 50) { 
 
    document.getElementById("color").style.color = "red"; 
 
    } else { 
 
    document.getElementById("color").style.color = "blue"; 
 
    }; 
 
}
<h3 id="color">Conditional Example</h3> 
 
<form name="form"> 
 
    <input type="text" id="input"><br> 
 
    <button type="submit" id="submit">Submit</button> 
 
</form>

+0

DOM 선택을 처리기로 옮길 필요는 없습니다. 그냥 .value 액세스. 그것은 정말로 중요하지 않습니다. 그냥 지적 해. –

+0

@ 스쿼트 예, 사실 – j08691

관련 문제