parsley.js(可选)验证数字输入

时间:2019-02-20 20:38:16

标签: javascript jquery validation parsley.js

我有一个电话号码输入字段。它是表单上的可选字段,但是如果填充,则必须为10位数字。因此,可以为空或10位数字。如何使用parsley.js完成此操作?

此问题与我要寻找的问题类似,但是我尝试了各种组合,但无法正常工作:

enter link description here

这是我的输入内容

class OrderDataProvider extends \Magento\Ui\DataProvider\AbstractDataProvider
{
    public function __construct(
        Action\Context $context, /* object of "Magento\Backend\App\Action" */
        $name,
        $primaryFieldName,
        $requestFieldName,
        CollectionFactory $collectionFactory,
        \Magento\Sales\Model\ResourceModel\Order\CollectionFactory  $orderCollection,
        array $addFieldStrategies = [],
        array $addFilterStrategies = [],
        array $meta = [],
        array $data = []
    ) {
        parent::__construct($name, $primaryFieldName, $requestFieldName, $meta, $data);

        $auth= $context->getAuth();
        $loginUser=$auth->getUser();
        $loginUserRole=$loginUser->getRole();
    }

这是欧芹初始化(验证适用于同一表单上的其他字段,因此我不认为这是问题所在):

<input type="text" class="form-control form-control-sm m-input phone-num" autocomplete="off" style="display:none;" id="phone-input" name="phone" placeholder="0" data-parsley-trigger="keyup" data-parsley-validation-threshold="1" data-parsley-debounce="500" data-parsley-type="digits">

是否需要为此进行自定义验证?如果是这样,我该怎么做?

1 个答案:

答案 0 :(得分:2)

只需将inputdata-parsley-type="digits" data-parsley-minlength="10"的属性添加到data-parsley-maxlength="10"

示例:

<input type="text" class="form-control form-control-sm m-input phone-num" autocomplete="off" 
    style="display:none;" id="phone-input" 
    name="phone" placeholder="0" data-parsley-trigger="keyup" data-parsley-validation-threshold="1" 
    data-parsley-debounce="500" 
    data-parsley-type="digits" 
    data-parsley-minlength="10" 
    data-parsley-maxlength="10"/>