Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CakePHP Javascript OnSelect下拉列表_Javascript_Cakephp - Fatal编程技术网

CakePHP Javascript OnSelect下拉列表

CakePHP Javascript OnSelect下拉列表,javascript,cakephp,Javascript,Cakephp,我有一点问题,我不确定javascript是否是解决这个问题的方法。无论如何,我的表单中有4个字段,分别是下拉字段、文件上载字段和2个文本输入字段 我的表单目前实现了一个引导验证程序,它使用javascript。这是它的一个片段 $('#uploadFileForm') .bootstrapValidator({ live: 'enabled', fields: { '

我有一点问题,我不确定javascript是否是解决这个问题的方法。无论如何,我的表单中有4个字段,分别是下拉字段、文件上载字段和2个文本输入字段

我的表单目前实现了一个引导验证程序,它使用javascript。这是它的一个片段

$('#uploadFileForm')
            .bootstrapValidator({
                live: 'enabled',
                fields: {
                    'data[Upload][uploadtype]': {
                        validators: {
                            notEmpty: {
                                message: 'Choose Upload Type'
                            }
                        }
                    },
                    'data[Upload][browsefile]': {
                        validators: {
                            notEmpty: {
                                message: 'Choose a file to upload'
                            },
                            file: {
                                extension: 'pdf',
                                type: 'application/pdf',
                                maxSize: 5120 * 5120 * 5120 * 5120 * 5120,
                                message: 'The file must be in .pdf format and must not exceed 5MB in size'
                            }
                        }
                    };
不管怎样,这一个是有效的。我想做的是文件上传字段将根据下拉字段中选择的内容调整其验证器

例如,假设我在下拉列表中选择了“PDF”,上面的代码将触发并说“文件必须是.PDF格式,并且大小不得超过5MB”,这是正确的。但是如果我在下拉列表中选择了“图片”,我如何才能使正确的验证器出现呢

我有什么办法可以做到这一点吗


谢谢大家!

您必须检查正在上载的文件类型并更改验证规则。尝试使用CakePHP验证而不是javascript。但是我有很多使用引导验证程序的输入字段。我不想全部改变?有没有办法使用javascript实现这一点?当您选择data[Upload][uploadtype]时,请尝试动态更改data[Upload][browsefile]的验证规则,那么我该怎么做呢?检查您是否可以更改模型或控制器中的验证规则。您可以执行如下操作:$this->request->data['selection']=='1')$this->validator()->add('username','required');