2012-03-20 120 views
1

我有一个简单的文本框,我输入的数值为this.And我想格式化数值到小数点后两位。像如果我在文本框中输入10并按下输入或离开文本框它应该被转换成10.00.请告诉我,如果存在任何可能性使用JavaScript或vb.net或asp.net属性textbox.I已经尝试在JavaScript上输入密钥或制表键按下,但它转换入10.00每次当我按下输入或tab.here是代码文本框十进制格式修复

//Make Formatting with .00 


document.onkeydown = function disableKeys() { 

    if(typeof event != 'undefined') { 
     if((event.keyCode == 9) || 
      (event.keyCode == 13)) { 
      var a; 
      var b; 
      a=parseFloat(document.getElementById('txtpkrusd').value,10); 
      b=parseFloat(document.getElementById('txtRatelb').value,10); 
      document.getElementById('txtpkrusd').value=formatNumber(a);   
      document.getElementById('txtRatelb').value=formatNumber(b);   

     } 
    }; 
}; 
+0

要格式化您需要的数字,可以像这样固定[code] var num = 2.4; alert(num.toFixed(2)); // 2.40;希望这有助于欢呼 – 2012-03-20 07:01:43

回答

1

你好希望这有助于:(除了我上面即四季使用评论.toFixed(NUM))

演示(输入号码并按回车键)http://jsfiddle.net/6wG26/5/回车键和Tab键都在这里http://jsfiddle.net/Mtw7c/7/

请;让我如果这不是你想要的,我会删除我的帖子;但这会帮助你。

既然你有力多的代码了我已经分叉的样品在这里:

**HTML:** 

<input type="text" name="one" class="currency"> 


**JQuery code:** 

    (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); 


    $(function() { 
     $('.currency').currencyFormat(); 
    });​ 

OR ENTER键& Tab键在这里:http://jsfiddle.net/Mtw7c/7/

$('.currency').live('keydown', function(e) { 
     var key = e.keyCode || e.which; 

      if (key== 9 || key == 13) { 
      e.preventDefault(); 
       if(isNaN(parseFloat(this.value))) return; 
        this.value = parseFloat(this.value).toFixed(2); 
      // call custom function here 
      }   

    }); 

希望这有帮助,如果你阅读下面的链接 - 从这里取得的样本,但是对于ma,这将是很好的ke it it for you,In jQuery, what's the best way of formatting a number to 2 decimal places?

你可以随时把验证号码的文本框&其他修改,希望这可以帮助队友,欢呼声!

2
var num = 10; 

var result = num.toFixed(2); //will give 10.00 

Examples

+0

先生有没有办法修复输入或制表符事件的文本框,因为当我按下输入格式的所有文本框页面toFixed功能 – 2012-03-20 07:30:00

+0

@ user1220667 Hiya,使用此为你的关键事件,这应该有所帮助: http://stackoverflow.com/questions/2335553/jquery-how-to-catch-enter-key-and-change-event-to-tab - 请参阅我的答案下面我已经包括js小提琴为您的输入密钥以及干杯! – 2012-03-20 07:41:31

+0

@ user1220667:您已将keydown事件附加到文档,而不是附加到Tats_innit所示的文本框。 – dhinesh 2012-03-20 08:03:29