首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery在提交时更改值

jQuery在提交时更改值
EN

Stack Overflow用户
提问于 2015-07-21 08:43:53
回答 3查看 593关注 0票数 0

我使用PayPal捐款按钮有问题。

PayPal的货币格式是用一个点定义的。在欧洲,我们的货币使用逗号。这导致了一个问题,在提交表单后,PayPal说金额格式错误。

通常,简单地使用str_replace(',','.', $_POST['amount'])并不是一个问题,但是表单将直接发送到PayPal,这样就没有机会使用php验证/替换输入。

这就是我需要使用jQuery的原因。

其基本思想是检查值中是否有逗号,如果用点替换逗号,则返回true来发布表单。

代码语言:javascript
运行
复制
$(function() {
    $('#paypal').submit(function() {
           if ($('#amount') contains a comma) {
              replace comma with dot;
           }
      }
        return true; 
    });
});

我通常不使用jQuery。所以如果有人能帮我,我会很感激的。

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-07-21 08:45:56

如果replace()中有多个,,则可以在amount中使用amount

代码语言:javascript
运行
复制
$(function() {
    $('#paypal').submit(function() {
        $('#amount').val($('#amount').val().replace(/,/g, '.'));
        return true;
    });
});

g标志将确保替换所有出现的,

如果只有一个,,您可以使用replace而不用regex(更快)

代码语言:javascript
运行
复制
$('#amount').val($('#amount').val().replace(',', '.'));
票数 4
EN

Stack Overflow用户

发布于 2015-07-21 10:02:20

您可以使用replace所有逗号出现的点。

代码语言:javascript
运行
复制
if ($('#amount').val().indexOf(',')!=-1) {
      $('#amount').val()=$('#amount').val().replace(/,/g,'.')
}
票数 1
EN

Stack Overflow用户

发布于 2015-07-21 08:47:23

您可以使用字符串replace()方法。

代码语言:javascript
运行
复制
var str = '190,89';
var res = str.replace(",", "."); 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31534240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档