val ()은 어떻게 Number를 반환 할 수 있습니까?
에서 val
문서 이 설명을 작성 :
.val () 반환 : 문자열, 숫자, 배열
를 얻으려고했지만 Number
반환 만하는 것 같습니다. string
내가 잘못하고있는 것이 있습니까?
$('#gdoron').val('1');
alert($('#gdoron').val() === '1'); // true
alert(typeof $('#gdoron').val()); // string.
$('#gdoron').val(1);
alert($('#gdoron').val() === 1); // false
alert(typeof $('#gdoron').val()); // string (not "number"!)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="gdoron" />
내 질문은 : 문서에서 말하는 것처럼 어떻게 val()
숫자를 반환 할 수 있습니까? 문제는 문자열을 어떻게 구문 분석 할 수 있는지에 관한 것이 아닙니다.
일부 HTML5 요소 (예 : 진행률)
alert(typeof $("#prog").val()); // number
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<progress value="50" max="100" id="prog"></progress>
텍스트 입력의 value
속성은 항상 문자열을 반환합니다. parseInt
정수를 얻으려면 값 이 필요합니다 .
parseInt($('#myInput').val(), 10);
나는 약간의 빠른 엿보기를 해봤고 대답이 있다고 생각합니다. val
함수 의 구현을 살펴보면 소위 val-hook이 제자리에 있고 val-hook이 숫자를 반환하면 해당 숫자가 val 함수에서있는 그대로 반환된다는 것을 알 수 있습니다. 나는 val-hooks가 주로 플러그인에서 슬라이더 등과 같은 사용자 지정 컨트롤을 만드는 데 사용된다는 것을 제안하는 이 토론 을 찾았습니다 . 여기서의 "자연"반환 값은 val
정수일 수 있습니다. 이것이 귀하의 질문에 약간의 빛을 비추기를 바랍니다.
이를 수행하는 val () 대신 사용할 jquery 플러그인을 만들 수 있습니다. 여기서는 요소 값을 가져올 때 val () 대신 사용할 함수 nval ()을 만듭니다.
$.fn.nval = function() {
return Number(this.val())
};
그런 다음 코드에서 다음을 사용하여 값을 숫자로 가져옵니다.
$('#elementID').nval()
흠. 콘솔에있는 모든 항목에 대해 jQuery $($0).val()
및 Javascript $0.value
는 문자열 "3"을 반환합니다.
<input type='number' value='3'/>
<input type='text' value='3'/>
<input type='radio' value='3'/>
<input type='checkbox' value='3'/>
그래서 jQuery val () 문서 가 더 명확 할 수 있다고 생각 합니다 . 숫자 값을 반환하는 방법을 알 수 없으므로 parseInt($($0).val())
또는 사용하는 것이 좋습니다 parseFloat($($0).val())
.
참조 URL : https://stackoverflow.com/questions/9227268/how-can-val-return-number
'programing tip' 카테고리의 다른 글
Java if vs. try / catch 오버 헤드 (0) | 2021.01.07 |
---|---|
변수의 독 스트링 (0) | 2021.01.07 |
MVC 컨트롤러에서 한 작업에 대한 인증을 비활성화 할 수 있습니까? (0) | 2021.01.07 |
레일에 CSS 클래스 추가 link_to helper (0) | 2021.01.07 |
ImageMagick을 사용하여 애니메이션 GIF를 자르려면 어떻게합니까? (0) | 2021.01.07 |