Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.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
Javascript 如何覆盖jQuery验证两次?_Javascript_Jquery_Html_Image_Validation - Fatal编程技术网

Javascript 如何覆盖jQuery验证两次?

Javascript 如何覆盖jQuery验证两次?,javascript,jquery,html,image,validation,Javascript,Jquery,Html,Image,Validation,我使用jQuery进行了验证。 我第一次使用文档中提供的内容来覆盖它,方法如下 $('#userDetailForm').validate({ // Set validations for specific fields rules: { profile_image: { required: true }, 请忽略我的结束标签

我使用jQuery进行了验证。 我第一次使用文档中提供的内容来覆盖它,方法如下

        $('#userDetailForm').validate({
            // Set validations for specific fields
            rules: {
                profile_image: {
                    required: true
                },
请忽略我的结束标签

这实际上是一个个人资料图片上传。第一次,用户必须有一张图片。我使用的是同一个页面,如果图像存在,那么图像将显示

但问题是,图像显示后,用户可以选择上传新图片,但通过jQuery验证,它会强制用户再次上传图像

假设我的html中有这个

    <input type="file" name="profile_image" id="image">
但这根本不起作用


有人知道如果存在图像,我如何使所需的值消失吗?

您可以根据配置文件图片是否存在将变量设置为
true
false
,然后将该变量用作
所需的

的值。您可以根据需要将变量设置为
true
false
无论配置文件图片是否存在,然后使用该变量作为
required

的值。根据配置文件图片是否存在,您可以将变量设置为
true
false
,然后将该变量用作
required
@connorguney omg的值,这是明智之举!非常感谢!!!没问题。:)我将我的评论变成了一个答案,因此如果它有效,请在下面将其标记为正确。您可以根据配置文件图片是否存在,将变量设置为
true
false
,然后将该变量用作
必需的
@connorguney omg的值,这是明智之举!非常感谢!!!没问题。:)我把我的评论变成了一个答案,所以如果它有效,请在下面标记为正确。
            if ($('body').find('img').length) {
                $('#userDetailForm').validate({
                    // Set validations for specific fields
                    rules: {
                        profile_image: {
                            required: false
                        }
                    }
                });
            }