由ajax切断第一个字母

时间:2018-05-20 16:06:38

标签: javascript

我在laravel中使用货币包,它返回带有前缀的值,例如$10€6

问题是我通过ajax得到这些价格并将它们加在一起e.g. product price + size price然后我得到用户订单的总价,问题是我有这些前缀$或{{1}我无法计算价格所以我需要从我的JavaScript中删除价格中的那些字母,我尝试了一些我在网上找到的方式,例如numbersslice(1)它们都没有给了我寻找的结果。

这是我的代码:

substring(1)

我需要什么

<script> var start_price = parseFloat($('#price').attr('data-price')); $('#finalprice').val(parseFloat(start_price)); //default price $("#installation").click(function(){ var amountToAdd = 0; var nf = new Intl.NumberFormat('en-US', { maximumFractionDigits:0, minimumFractionDigits:0 }); $("#installation").each(function() { if($(this).is(":checked")){ amountToAdd += parseFloat($(this).val()); $('#finalprice').val(parseFloat(amountToAdd+start_price)); // change with installation price } else{ $('#finalprice').val(parseFloat(start_price)); // back to default price } }); $('#price').text(nf.format(parseFloat(amountToAdd+start_price))); }); </script> start_price

剪切前缀

额外的问题

由于我使用多种货币,并非我的所有货币都有amountToAdd个字母前缀,其中一些货币的前缀为1

e.g。

2 $10

如您所见,我的其他货币前缀为Rp100000,即2个字母。

问:我该如何处理这种情况?

1 个答案:

答案 0 :(得分:0)

听起来你可以使用正则表达式.replace从字符串中删除所有非数字字符。这将删除所有货币符号,无论符号或其字符长度如何。您可以像这样使用它:

<script>
    var start_price = parseFloat($('#price').attr('data-price').replace(/\D/g,'')); //HERE
    $('#finalprice').val(parseFloat(start_price)); //default price
    $("#installation").click(function(){
        var amountToAdd = 0;
        var nf = new Intl.NumberFormat('en-US', {
          maximumFractionDigits:0, 
          minimumFractionDigits:0
        });
        $("#installation").each(function() {
            if($(this).is(":checked")){
                amountToAdd += parseFloat($(this).val().replace(/\D/g,'')); //AND HERE
                $('#finalprice').val(parseFloat(amountToAdd+start_price)); // change with installation price
            } else{
                $('#finalprice').val(parseFloat(start_price)); // back to default price
            }
        });
        $('#price').text(nf.format(parseFloat(amountToAdd+start_price)));
    });
</script>

如果您需要在某个时候修改正则表达式,这可以是找到适合您的正则工具的有用工具:https://regex101.com