簡體   English   中英

Javascript無法用於禁用的文本框

[英]Javascript doesn't work for disabled text box

這是我的Javascript:

<script type = "text/javascript" language = "javascript">
  function formatCurrency(num) {
    num = num.toString().replace(/\Rs.|\,/g, '');
    if (isNaN(num))
      num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num * 100 + 0.50000000001);
    cents = num % 100;
    num = Math.floor(num / 100).toString();
    if (cents < 10)
      cents = "0" + cents;
    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
      num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));
    return (((sign) ? '' : '-') + num + '.' + cents);
  }
</script>

我正在使用此腳本在文本框中設置貨幣格式。 它適用於所有已啟用的文本框,但不適用於已禁用的文本框,因為在某些事件中,文本框中的輸入量相同。

以下是我的文本框:

<asp:TextBox ID="txtToTSanctioned" runat="server" Text="00.00"
  CssClass="mytextbox" Enabled="False"
  onblur = "this.value=formatCurrency(this.value);"></asp:TextBox>

有什么解決方案?

一種方法是對特定的文本框執行它。 正如您的情況一樣,它未啟用,並且值是通過編程設置的,您可以在填充后更新它的值:

var oldValue = $('.disabled-textbox').val();
var formattedValue = formatCurrency( oldValue );
$('.disabled-textbox').val( formattedValue );

現在,僅在填充文本框時才需要執行此代碼。 還要注意,我使用了類選擇器.disabled-textbox ,您可能需要將此類添加到文本框中,或者使用更智能的選擇器來獲取所有禁用的文本框。 這是顯示如何更新文本框的jsfiddle

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM