2014-02-07 3 views
0

나는 cordova로 모바일 앱을 만들고 있습니다. 따라서 내 코드는 안드로이드 및 ios 브라우저와 호환되어야합니다.입력 유형 번호 값을 얻는 방법

입력의 길이를 3 자리로 제한해야하는데 작동하지 않는 모든 비자 자 문자를 입력해야합니다.

여기에 내가 입력의 실제 가치를 얻을 수있는 방법 내 입력

<input id="age" type="number"> 

여기 내 JS

$("#age").bind("keyup", function (e) { 
      var ageSelector = $('#age'); 

      if (ageSelector.val().length > 3) { 
       ageSelector.val(ageSelector.val().substr(0, 3)); 
      } 
     }); 

http://jsfiddle.net/JSdj8/

입니까? 또는 그 이상 사용자가 모든 비 숫자 문자를 입력하지 못하게하려면 어떻게해야합니까?

+0

사용할 수 있습니까? 맞았습니까? –

+0

죄송합니다. 방금 변경했습니다. –

답변

0

이 숫자가 아니라면 true를 돌려줍니다 사용 isNaN(), 당신은 또한 maxlength 속성이 바이올린은 무엇

<input id="age" type="number" maxlength="3"> 

$("#age").bind("keyup", function (e) { 
    var ageSelector = $('#age'); 
    var val=ageSelector.val(); 
    if(isNaN(parseInt(val))) 
     ageSelector.val(val.substr(0, val.length-1)); 
    if (val.length > 3) { 
     ageSelector.val(val.substr(0, 3)); 
    } 
}); 

Fiddle Demo

+0

운 좋게도 시도했습니다. –

+0

번호를 입력해야만 (iOS 및 Android에서 올바른 키보드를 표시하기 위해) 입력 값이 실제 표시되는 것과 다릅니다. 게시 한 바이올린이 작동하지 않아 숫자가 아닌 경우 3 자 이상을 입력 할 수 있습니다 –

+0

'if (isNaN (val))'을'if (isNaN (parseInt (val)))''(isNaN은 문자열에서 이상하게 작동합니다.) 그리고 심지어 완벽하지 않습니다 –

관련 문제