[javascript] jQuery의 숫자에 쉼표 추가

이 번호가 있습니다

109998094456

그리고 내가하고 싶은 것은 필요한 경우 올바른 위치에 쉼표를 추가하는 것뿐입니다.

10,9998,094456

이것들은 모두 이와 같은 ap 태그 내에 있습니다 <p class="points">10999</p>.

할 수 있습니까?

나는 다른 게시물 http://jsfiddle.net/pdWTU/1/ 의 도움으로 여기에서 시도했지만 작동하지 않는 것 같습니다.

감사

제이미

최신 정보

약간 혼란스러워서 여기 http://jsfiddle.net/W5jwY/1/

더 나은 방법을 위해 새로운 Globalization 플러그인을 살펴 보겠습니다.

감사

제이미



답변

모든 브라우저에서 작동하며 이것이 필요한 전부입니다.

  function commaSeparateNumber(val){
    while (/(\d+)(\d{3})/.test(val.toString())){
      val = val.toString().replace(/(\d+)(\d{3})/, '$1'+','+'$2');
    }
    return val;
  }

정규식 덕분에 간결하고 요점을 썼습니다. 이것은 직선 JS이지만 다음과 같이 jQuery에서 사용할 수 있습니다.

$('#elementID').html(commaSeparateNumber(1234567890));

또는

$('#inputID').val(commaSeparateNumber(1234567890));


답변

Number(10000).toLocaleString('en');  // "10,000"


답변

Timothy Pirez 대답은 매우 정확했지만 사용자가 텍스트 필드에 입력 할 때 즉시 숫자를 쉼표로 바꿔야하는 경우 키업 기능을 사용할 수 있습니다.

      $('#textfield').live('keyup', function (event) {
        var value=$('#textfield').val();

      if(event.which >= 37 && event.which <= 40){
          event.preventDefault();
      }
      var newvalue=value.replace(/,/g, '');
      var valuewithcomma=Number(newvalue).toLocaleString('en');
      $('#textfield').val(valuewithcomma);

      });

    <form><input type="text" id="textfield" ></form>


답변

최근에 출시 된 Microsoft의 jQuery에 대한 글로벌화 플러그인 살펴보기


답변

Numeral.js를 살펴 보십시오 . 숫자, 통화, 백분율 형식을 지정할 수 있으며 현지화를 지원합니다.


답변

    function delimitNumbers(str) {
      return (str + "").replace(/\b(\d+)((\.\d+)*)\b/g, function(a, b, c) {
        return (b.charAt(0) > 0 && !(c || ".").lastIndexOf(".") ? b.replace(/(\d)(?=(\d{3})+$)/g, "$1,") : b) + c;
      });
    }

    alert(delimitNumbers(1234567890));


답변

나는 당신이 일종의 현지화를하고 있다고 생각 하므로이 스크립트를 살펴보십시오 .