我在使用 PayPal 捐赠按钮时遇到问题。
PayPal 的货币格式是用一个点定义的。在欧洲,我们的货币使用逗号。这会导致一个问题,即在提交表单后,PayPal 表示金额格式错误。
通常简单地使用 str_replace(',','.', $_POST['amount'])
不会有问题,但表单将直接发送到 PayPal,以便没有机会使用 php 验证/替换输入。
这就是我需要使用 jQuery 的原因。
基本思想是检查值中是否有逗号,如果有则用点替换逗号并返回 true 以发布表单。
$(function() {
$('#paypal').submit(function() {
if ($('#amount') contains a comma) {
replace comma with dot;
}
}
return true;
});
});
我通常不使用 jQuery。因此,如果有人可以帮助我,我将不胜感激。
提前致谢。
最佳答案
您可以使用 replace()
与 regex
如果数量
中会有多个,
$(function() {
$('#paypal').submit(function() {
$('#amount').val($('#amount').val().replace(/,/g, '.'));
return true;
});
});
g
标志将确保替换所有出现的 ,
。
如果只有一个,
你可以使用replace
而不用regex
(更快)
$('#amount').val($('#amount').val().replace(',', '.'));
关于jQuery 在提交时更改值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31534240/