jquery验证器,在php中定义规则

时间:2014-07-24 18:28:45

标签: php jquery forms jquery-validate

我正在使用jquery验证器插件

http://jqueryvalidation.org

我的qsn与此答案相关

https://stackoverflow.com/a/2862194/932473

主要是我需要根据一些需要或不需要的规则来提供一个功能。区别在于我需要和我的规则作为我的PHP中的数组,如

$validationMessages['rules'] = array(
    'email' => array(
        'required' => 'function () { return $("#myDiv").length; }',
    )
);

然后我在js

var rules = $.parseJSON('<?php echo json_encode($validationMessages['rules'])?>');

现在,当我提交表格时,它说

Error: Syntax error, unrecognized expression: function () { return $("#myDiv").length; }

当我在php中设置set required => true而不是函数时,它工作正常,但是函数定义会给出错误吗?我如何在php中定义函数并使其在js中工作?

由于

1 个答案:

答案 0 :(得分:0)

您需要将json保存为字符串变量,并将此变量用作$ .parseJSON中的参数。像这样:

var rulesJson = '<?php echo json_encode($validationMessages["rules"])?>';
var rulesObj = $.parseJSON(rulesJson);