如何使用javascript/jquery仅在另一个输入不是空的情况下添加必需的属性?

如何使用javascript/jquery仅在另一个输入不是空的情况下添加必需的属性?,javascript,jquery,html,Javascript,Jquery,Html,我在表单中有一个列表,因此在每个列表项中有2个输入 我希望在提交表单时,如果我在同一个列表上的两个输入中有一个不是空的,那么它们都应该被满足(必需属性),但是如果在其他列表项上,这两个输入是空的,则按原样发送它们 以下是仅一个列表项的示例: <form class="settings-form quick-reports"> <ul class="report-list"> <li class="report-list-li">

我在表单中有一个列表,因此在每个列表项中有2个输入

我希望在提交表单时,如果我在同一个列表上的两个输入中有一个不是空的,那么它们都应该被满足(必需属性),但是如果在其他列表项上,这两个输入是空的,则按原样发送它们

以下是仅一个列表项的示例:

<form class="settings-form quick-reports">
    <ul class="report-list">
        <li class="report-list-li"> 
            <span class="report-num">Report 01</span> 
            <div class="settings-name-fields">
                <label for="website-name1" class="report-name">Name</label>
                <input class="website-input" type="text" id="website-name1">
            </div>
            <div class="settings-url-fields">
                <label for="website-url1" class="report-url">URL</label>
                <input class="url-input" type="url">
            </div>
        </li>
    </ul>
</form>
但我不知道如何做到这一点,并使它适合我名单上的每一个项目


我所有的小提琴都是

这应该可以满足你的需要:

使用循环:


或:


我建议不要在此处使用属性
required
,首先,此属性在所有浏览器中都不起作用(例如,忽略它),其次,在提交时设置它可能太晚

我会用这样的方式:

if($(input1).val() == "" && $(input2).val()==""){
    //handle case and show error message
    alert("Either input one or input2 needs a value");
    e.preventDefault();
    return false; //make sure the form is not submitted
}

非常感谢。正是我想要的。
$('#submit').click(function(e){
    // remove required property in case that some fields were modified before click
    $('.report-list input').prop('required', false).each(function(){
        !$(this).val() || $(this).closest('li').find('input').prop('required', true);
    });
});
$('#submit').click(function(e){
    $('.report-list input').prop('required', false).filter(function(){
        return $(this).val();
    }).closest('li').find('input').prop('required', true);
});
if($(input1).val() == "" && $(input2).val()==""){
    //handle case and show error message
    alert("Either input one or input2 needs a value");
    e.preventDefault();
    return false; //make sure the form is not submitted
}