在规则中使用 php 会话值进行自定义 jquery 验证
Posted
技术标签:
【中文标题】在规则中使用 php 会话值进行自定义 jquery 验证【英文标题】:custom jquery validation with php session value in rule 【发布时间】:2020-12-11 05:53:20 【问题描述】:我创建了一个打印 pdf 的系统。它基于一种购物车。选择pdf,选择要打印多少次pdf(1-10)。在打印队列(购物车)中,您可以单击一个按钮,然后在 1 个输入字段中输入一个逗号分隔的字符串,其中包含最大打印数量的名称。然后将打印每个 pdf 和用户名。如果名称少于打印数量,则剩余的打印件将不带名称打印。我需要对此输入字段进行某种验证。
例如。 打印数量 = 5 有效字符串:name1,name2,name3,name4,name5 有效字符串:name1,name2,name3
我在一个页面中加载 jquery-3.5.1.js 和 jquery-validation-1.19.2。
问题一:如何获取规则“max_user_names: [numberofprints]”中的php $session['number'] 以便在max_user_name 方法中使用?
我认为实际的验证可以通过两种方式完成:
计算逗号的个数,如果 "number > numberofcommas" 为真,则字符串有效 要么: 拆分字符串并计算值,如果“number => numberofvalues”为真,则字符串有效。
问题2:一个比另一个更好吗?
$.validator.addMethod('max_user_names', function(value, element, params)
return validationcode
, 'to many names');
$("#NamesModalForm").validate(
rules:
user_names:
required: true,
max_user_names: [numberofprints]
,
,
messages:
user_names:
required: "Enter a value"
,
);
【问题讨论】:
【参考方案1】:进一步阅读后,我设法用下一个代码修复它:
$.validator.addMethod('max_user_names', function(value, element)
var nameArr = value.split(',');
var nameArrLength = nameArr.length
return parseInt(nameArrLength) <= parseInt($("#quantity").val());
, 'to many names');
【讨论】:
以上是关于在规则中使用 php 会话值进行自定义 jquery 验证的主要内容,如果未能解决你的问题,请参考以下文章
PHP Wordpress:在一个会话变量中返回所有自定义字段