我可以看到Parsley.js处理数字的英文分隔符。
当我使用西班牙语数字的Parsley时它不起作用(例如:5,50不是Parsley的有效数字,在我的国家逗号是我们的小数分隔符。)
是否有一些配置可以改变它?
答案 0 :(得分:5)
您需要创建符合您需求的必要正则表达式。一个(可能是基本的)正则表达式将是^\d+(,\d+)?$
,它与逗号匹配任何数字或数字。
您甚至不需要创建custom validator,因为Parsley允许您使用接收正则表达式的data-parsley-pattern
。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/parsley.js/2.0.7/parsley.min.js"></script>
<form data-parsley-validate>
<input type="text" name="commaNumbers" data-parsley-pattern="^\d+(,\d+)?$" />
<input type="submit" />
</form>
&#13;
答案 1 :(得分:1)
我知道已经晚了,但是此解决方案也对我有帮助。我刚刚修改/更改了Luis Cruz代码中的模式,以便该字段可以处理小数位。 (例如1,000,000,000.30)
希望这也有帮助。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/parsley.js/2.0.7/parsley.min.js"></script>
<form data-parsley-validate>
<input type="text" name="commaNumbers" data-parsley-pattern="^-?(?:\d+|\d{1,3}(?:[\s\.,]\d{3})+)(?:[\.,]\d+)?$" required/>
<input type="submit" />
</form>