반응형
jQuery에서 소수점 이하 2 자리로 숫자를 포맷하는 가장 좋은 방법은 무엇입니까?
이것이 내가 지금 가지고있는 것입니다.
$("#number").val(parseFloat($("#number").val()).toFixed(2));
나에게 지저분 해 보인다. 기능을 올바르게 연결하고 있다고 생각하지 않습니다. 각 텍스트 상자에 대해 호출해야합니까, 아니면 별도의 함수를 만들 수 있습니까?
여러 분야에서이 작업을 수행하거나 자주 수행하는 경우 플러그인이 답일 수 있습니다.
다음은 필드 값을 소수점 이하 두 자리로 형식화하는 jQuery 플러그인의 시작입니다.
필드의 onchange 이벤트에 의해 트리거됩니다. 다른 것을 원할 수도 있습니다.
<script type="text/javascript">
// mini jQuery plugin that formats to two decimal places
(function($) {
$.fn.currencyFormat = function() {
this.each( function( i ) {
$(this).change( function( e ){
if( isNaN( parseFloat( this.value ) ) ) return;
this.value = parseFloat(this.value).toFixed(2);
});
});
return this; //for chaining
}
})( jQuery );
// apply the currencyFormat behaviour to elements with 'currency' as their class
$( function() {
$('.currency').currencyFormat();
});
</script>
<input type="text" name="one" class="currency"><br>
<input type="text" name="two" class="currency">
원하는 경우 둘 이상의 요소를 선택할 수있는 이와 같은 것일 수 있습니다.
$("#number").each(function(){
$(this).val(parseFloat($(this).val()).toFixed(2));
});
입력을 사용할 때 더 도움이 될 수 있기 때문에 키 업과 함께 사용할 Meouw 함수를 수정합니다.
이것을 확인하십시오 :
안녕하세요!, @heridev와 저는 jQuery에서 작은 함수를 만들었습니다.
다음을 시도 할 수 있습니다.
HTML
<input type="text" name="one" class="two-digits"><br>
<input type="text" name="two" class="two-digits">
jQuery
// apply the two-digits behaviour to elements with 'two-digits' as their class
$( function() {
$('.two-digits').keyup(function(){
if($(this).val().indexOf('.')!=-1){
if($(this).val().split(".")[1].length > 2){
if( isNaN( parseFloat( this.value ) ) ) return;
this.value = parseFloat(this.value).toFixed(2);
}
}
return this; //for chaining
});
});
온라인 데모 :
(@heridev, @vicmaster)
반응형
'Programing' 카테고리의 다른 글
한 번에 여러 문자열 바꾸기 (0) | 2020.11.23 |
---|---|
Android는 백 스택에서 활동을 제거합니다. (0) | 2020.11.23 |
집합의 모든 하위 집합을 얻는 방법은 무엇입니까? (0) | 2020.11.23 |
Android NDK의 파일 작업 (0) | 2020.11.23 |
단일 값으로 배열 초기화 (0) | 2020.11.23 |