2012-06-13 68 views
0

我发送物有所值形式e.g如何删除字符串Javascript中的所有字符?

<input type="text" name="amount" value="N50,000.00 NGN" /> 
<input type="button" value="submit"> 

我想删除的金额字段只留下这种格式的数字的所有字符;

<input type="text" name="amount" value="50000" /> 
<input type="button" value="submit"> 

什么是最好的方法来做到这一点与JavaScript?

+0

/[^0-9.]/g将删除一切,不是一个数字或小数点的正则表达式。然后你可以解析这个。 – user17753

回答

0

您可以尝试浏览字符串并获取数字字符并将它们附加到结果字符串中。我不知道这是不是最好的方法,但它是一个有效的方法。

var res = ""; 
for (var c in str) { if (str[c].match(/\d/)) { res += str[c]; } } 
2

使用

Number('N50,000.00 NGN'.replace(/[a-z, ]/gi,'')); 

如果只想整数部分,使用方法:

parseInt(Number('N50,000.00 NGN'.replace(/[a-z, ]/gi,'')),10); 

replace部分删除所有字母字符,从字符串的第一个逗号和空格。

+0

这对'''不起作用'。' –

+0

这就是答案的'parseInt'部分。我想这个数字可能是'N50,000.34 NGN',在这种情况下'数字'转换会保留小数。 – KooiInc

+0

好点。我的错! –

0

试试这个

<script type="text/javascript" language="javascript"> 

     function doWork() { 
      var amount = document.getElementsByName('amount'); 
      var str = amount[0].value; 
      var temp = ''; 
      for (i = 0; i < str.length; i++) { 
       if (!isNaN(str[i])) 
        temp += str[i]; 
      } 
      amount[0].value = temp; 
     } 
    </script> 

<input type="text" name="amount" value="N50,000.00 NGN" /> 
<input type="button" value="submit" onclick="doWork();"> 
+0

你好,感谢你的时间,这实际上工作,但有一点问题,但。结果,而不是打印50000是(50,000)是打印5000000是(N5,000,000)。谢谢 –

0

首先想到你想要做的就是使用这样的

<input type="text" name="amount" value="N50,000.00 NGN" /> 
<input type="button" value="submit"> 



var amount = $('input[name=amount]').val().replace(/[A-Za-z$-]/g, ""); 
    amount=amount.replace(",", ""); 
    amount=parseInt(amount).toFixed(0); 

这里剥去数字字符串或值是一个工作示例

http://jsfiddle.net/C69u4/

2

试试这个

var i = "N50,000.00 NGN"; 
parseInt(i.replace(/[^\d\.]/gi, ""), 10); 

在线例如:http://jsbin.com/ojumir

0
<script type="text/javascript" language="javascript"> 

    function doWork() { 
     var amount = document.getElementsByName('amount'); 
     amount[0].value = parseInt(amount[0].value.replace(/[^0-9.]/g, "")).toFixed(0); 
    } 
</script> 

<input type="text" name="amount" value="N50,000.00 NGN" /> 
<input type="button" value="submit" onclick="doWork();"> 
相关问题