Parsley.js - 仅验证数字的可选输入

use*_*508 8 html javascript forms validation parsley.js

我有一个表单,有一个可选输入和3个必需的输入字段.对于可选输入,我有以下标记:

<input type="number" placeholder="0" min="0" max="20000" step="100" data-parsley-validation-threshold="1" data-parsley-trigger="keyup">
Run Code Online (Sandbox Code Playgroud)

如果我输入字母或任何其他字符,则不会触发验证.它确实验证了最小值和最大值.如果我把所需的属性看起来确实有效,但我不希望这样.我也试过定义一个模式如下:

data-parsley-pattern="^[0-9]*$"
Run Code Online (Sandbox Code Playgroud)

他们似乎都没有工作.有任何想法吗?

Luí*_*ruz 20

你可以用data-parsley-type="digits".注意使用type="text"而不是number.

如果您只想允许数字(不是浮点数),则此方法有效.

<input type="text" placeholder="0" min="0" max="20000" step="100" 
    data-parsley-validation-threshold="1" data-parsley-trigger="keyup" 
    data-parsley-type="digits" />
Run Code Online (Sandbox Code Playgroud)

如果你想要花车,你可以使用data-parsley-type='number':

<input type="text" placeholder="0" min="0" max="20000" step="100" 
    data-parsley-validation-threshold="1" data-parsley-trigger="keyup" 
    data-parsley-type="number" />
Run Code Online (Sandbox Code Playgroud)