2017-02-22 3 views
0

oninputbinding의 입력을 거부 할 수 있습니까?oninput 바인딩에서 캡처 한 입력을 거부 할 수 있습니까?

var inputEl = document.getElementById("myinput"); 

inputEl.addEventListener('input', function() { 
    if (this.value < 0) { 
    return false; // Reject input; replace with previous value 
    } else { 
    // Valid input. 
    } 
}); 
+1

즉 것은 u는 바이올린에 넣어 또는 더 나은 것 니펫을 경우 –

+1

그냥 set'this.value = ""' – Rajesh

+1

거부 ​​입력이란 무엇을 의미합니까? 텍스트 입력 내부의 새 값을 이전 값으로 바꾸는 것을 의미합니까? –

답변

1
솔루션에서 찾을 수 있습니다

Codepen,

https://codepen.io/li-xinyang/pen/MpgYMW?editors=0011

var el = document.getElementById('input'); 
 
var previousVal = "1234"; 
 

 
console.log(el); 
 

 
el.addEventListener('input', function() { 
 
    console.log(this.value); 
 
    if (parseInt(this.value) < 0) 
 
    this.value = previousVal; 
 
    else { 
 
    previousVal = this.value; 
 
    } 
 
})
<input type="number" id="input">

+0

그냥 포인터, previuosVal을 공백으로 초기화하십시오. – Rajesh

관련 문제