Javascript 如果4个字段中的1个字段有值,则进行Parsley.js验证

Javascript 如果4个字段中的1个字段有值,则进行Parsley.js验证,javascript,html,validation,parsley.js,Javascript,Html,Validation,Parsley.js,表单上有4个文本输入。 如果其中至少有一个字段有值,则所有剩余字段都必须有值。 是否可以为此验证配置Parsley.js?是的,可以。但是,没有默认配置来执行此操作 这意味着您必须在javascript中创建该逻辑,并在每种情况下销毁/绑定欧芹 看看这段代码(): 测试 $('#myForm')。欧芹(); $(“#字段1,#字段2,#字段3,#字段4”)。on('change',function(){ 如果($(“#字段1”).val().length>0|| $(“#字段2”).val()

表单上有4个文本输入。
如果其中至少有一个字段有值,则所有剩余字段都必须有值。

是否可以为此验证配置Parsley.js?

是的,可以。但是,没有默认配置来执行此操作

这意味着您必须在javascript中创建该逻辑,并在每种情况下销毁/绑定欧芹

看看这段代码():


测试
$('#myForm')。欧芹();
$(“#字段1,#字段2,#字段3,#字段4”)。on('change',function(){
如果($(“#字段1”).val().length>0||
$(“#字段2”).val().length>0||
$(“#字段3”).val().length>0||
$(“#字段4”).val().length>0)
{
//如果填写了任何字段,请设置attr required
$(“#字段1,#字段2,#字段3,#字段4”).attr(“必需”、“必需”);
}否则{
//如果所有字段均为空,请删除所需属性
$(“#字段1,#字段2,#字段3,#字段4”)。删除属性(“必需”);
}
//销毁ParsleyForm实例
$('#myForm').parsley().destroy();
//包扎欧芹
$('#myForm')。欧芹();
});
$(“#myForm”)。在('submit',函数(事件){
$(this.parsley().validate();
如果($(this.parsley().isValid()){
警报(“表格有效”);
}
event.preventDefault();
});

被临时禁用。我已经将js引用更新为CDN。看最新的小提琴,不客气。请接受这个答案,因为它解决了您的问题。有关更多信息,请访问。
<form class="form-inline" method="post" id="myForm">
    <input type="text" id="field1" name="field1" />
    <input type="text" id="field2" name="field2" />
    <input type="text" id="field3" name="field3" />
    <input type="text" id="field4" name="field4" />
    <button type="submit" class="btn btn-default">test</button>
</form>

<script>
    $('#myForm').parsley();

    $("#field1, #field2, #field3, #field4").on('change', function() {
        if ($("#field1").val().length > 0 ||
            $("#field2").val().length > 0 ||
            $("#field3").val().length > 0 ||
            $("#field4").val().length > 0 )
        {
            // If any field is filled, set attr required
            $("#field1, #field2, #field3, #field4").attr("required", "required");
        } else {
            // if all fields are empty, remove required attr
            $("#field1, #field2, #field3, #field4").removeAttr("required");
        }
        // destroy ParsleyForm instance
        $('#myForm').parsley().destroy();

        // bind parsley
        $('#myForm').parsley();
    });

    $("#myForm" ).on('submit', function( event ) {
        $(this).parsley().validate();
        if ($(this).parsley().isValid()) {
            alert('form is valid');
        }
        event.preventDefault();
    });

</script>