Javascript 从php数组构建jquery验证的动态规则
我正在构建一个表单(userModify),其中包含数组$userFields中所需的所有属性。我希望能够在服务器端验证数据之前,使用jqueryvalidate检查数据。我有一个在页面前面构建的字段数组Javascript 从php数组构建jquery验证的动态规则,javascript,php,jquery,ajax,validation,Javascript,Php,Jquery,Ajax,Validation,我正在构建一个表单(userModify),其中包含数组$userFields中所需的所有属性。我希望能够在服务器端验证数据之前,使用jqueryvalidate检查数据。我有一个在页面前面构建的字段数组 $userFields= array('userName'=>array('type'=>'field','required'=>NULL,'options'=>NULL), 'password' => array('type'=> 'fi
$userFields=
array('userName'=>array('type'=>'field','required'=>NULL,'options'=>NULL),
'password' => array('type'=> 'field','required'=>NULL,'options'=>NULL),
'lastName' =>array('type'=>'text','maxSize'=>'32','required'=>'*','options'=>NULL),
'firstName'=>array('type'=>'text','maxSize'=>'32','required'=>'*','options'=>NULL),
'phoneNumber'=>array('type'=>'select','maxSize'=>NULL,'required'=>NULL,'options'=>$numbers),
'extension' =>array('type'=>'text','maxSize'=>'8','required'=>'*','options'=>NULL));
验证脚本:
$( "#userModify" ).validate({
rules: {
phoneNumber: {
required: true
}
}
});
我的问题是如何将字段规则动态地放入jquery验证结构中。在这个例子中,我将为lastName、firstName和extension构建规则。我不想静态地添加字段规则,因为数组可以是任意数量的不同字段,而validate结构将包含大量的规则
我考虑过对另一个文件进行ajax调用以获取最初的数组,然后分解ajax调用的结果,这是一个好主意吗
我知道这段代码显然是错误的,但我在下面写这段代码是为了描述我正在尝试做的事情
$( "#userModify" ).validate({
rules: {
<?php
foreach ($userFields as $k => $v)
{
if ($v['required'] == "*")
{
//add jquery rule
}
}
?>
});
$(“#用户修改”)。验证({
规则:{
});
我还应该尝试其他方法吗?您可以尝试类似的方法,只需将数据传输到javascript并让它创建规则:
var form = <?php echo json_encode($userFields); ?>;
var rules = {}, i;
for (name in form) {
if (form[name].required === '*') {
rules[name].required = true;
}
}
$( "#userModify" ).validate({ rules: rules });
var form=;
var规则={},i;
用于(表格中的名称){
如果(格式[名称]。必需==='*')){
规则[名称]。必需=true;
}
}
$(“#userModify”).validate({rules:rules});