因为客户的要求,要将一串数字转换成类似xxx万xxxx元的格式,所以就试着写了下面的代码:

CSS:


  1. .fl{
  2. float:left;
  3. }
  4. #nums{
  5. height: 20px;
  6. line-height: 20px;
  7. border: 1px solid #ccc;
  8. padding-left: 3px;
  9. }
  10. #btn_go{
  11. background: #ED3D7D;
  12. padding: 2px 10px;
  13. color: #fff;
  14. border: 0px;
  15. }


HTML:


  1. <input id="nums" onkeyup="value=this.value.replace(/\D+/g,'')"/>
  2. <button id="btn_go">点击拆分</button>
  3. <div class="history_money_all_big_box">
  4. <div class="history_money_all_box fr">
  5. <div class="fl money_man_box">
  6. <div id="man_nums" class="nums_anime fl">0</div>
  7. <div id="man_nums_chache" style="display:none;"></div>
  8. <div class="fl"></div>
  9. </div>
  10. <div class="fl">
  11. <div id="qian_nums" class="nums_anime fl">0</div>
  12. <div id="qian_nums_chache" style="display:none;"></div>
  13. </div>
  14. <div class="fl"></div>
  15. <!--总金额输入到这里(无需拆分,必须为整数)-->
  16. <div id="all_money_cache" style="display:none;">31087</div>
  17. </div>
  18. </div>


JS:


  1. <script>
  2. $(document).ready(function () {
  3. $('#btn_go').click(function(){
  4. var nums = $('#nums').val();
  5. /*判断有没有输入数字*/
  6. if(nums==""){
  7. return false
  8. }
  9. /*先将数字除以10000小数点前的就是万元数字*/
  10. var man_qian_num = parseInt(nums)/10000;
  11. var strs_qian=man_qian_num.toFixed(4);
  12. /*小数点进行拆分*/
  13. var arr_qian = strs_qian.split(".");
  14. /*输出万位后面的数字*/
  15. $('#qian_nums').html(arr_qian[arr_qian.length - 1]);
  16.  
  17. var strsb_man=man_qian_num.toFixed(0);
  18. /*判断万位数是否为0*/
  19. if(strsb_man<=0){
  20. /*如果万位数为0则要筛选数字前面的0*/
  21. var qian_zero = $('#qian_nums').html();
  22. $('#qian_nums').html(qian_zero.replace(/\b(0+)/gi,""))
  23. }
  24. /*如果万位数后面本身是0*/
  25. if(qian_zero<=0){
  26. /*直接输出0*/
  27. $('#qian_nums').html("0")
  28. }
  29. /*输出万位数前面的数字*/
  30. $('#man_nums').html(strsb_man)
  31. });
  32. });
  33. </script>


效果:

0
0