我有一个电话号码输入字段。它是表单上的可选字段,但是如果填充,则必须为10位数字。因此,可以为空或10位数字。如何使用parsley.js完成此操作?
此问题与我要寻找的问题类似,但是我尝试了各种组合,但无法正常工作:
这是我的输入内容
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">
是否需要为此进行自定义验证?如果是这样,我该怎么做?
答案 0 :(得分:2)
只需将input
和data-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"/>