Javascript 添加名称=js(eForm Modx)所需的名称

Javascript 添加名称=js(eForm Modx)所需的名称,javascript,validation,modx,Javascript,Validation,Modx,我的表单使用Modx-eForm 我的问题是,我需要在几个输入字段中添加:required,但仅当复选框未选中时 我有如下字段: <input type="text" placeholder="Last name" id="deliver_lastname" name="deliver_lastname:required" class="[[!+fi.error.deliver_lastname:notempty=`error`]]" /> :取消选中复选框后需要设置必填项 我

我的表单使用Modx-eForm

我的问题是,我需要在几个输入字段中添加:required,但仅当复选框未选中时

我有如下字段:

<input type="text" placeholder="Last name" id="deliver_lastname" name="deliver_lastname:required" class="[[!+fi.error.deliver_lastname:notempty=`error`]]" />

:取消选中复选框后需要设置必填项

我有一个复选框来默认隐藏一些字段

<p id="shiptobilling" class="form-row">
Same as billing address <input type="checkbox" onclick="SetBilling(this.checked);" checked="checked" /> 
</p>

与帐单地址相同

隐藏带有字段的div的小脚本:

<script type="text/javascript">
function SetBilling(checked) {
    if (checked) {document.getElementById('deliveryaddres').style.display="none";}
    else {document.getElementById('deliveryaddres').style.display="block";}
}
</script>

函数设置(已选中){
如果(选中){document.getElementById('deliveryaddres').style.display=“none”;}
else{document.getElementById('deliveryaddres').style.display=“block”}
}
添加如下内容

document.getElementById("deliver_lastname").required = true;

可以简化-始终需要let deliveryaddres,当选中复选框时,只需让字段的值与BillingAddress同步

所需的javascript:

<script type="text/javascript">
    function SetBilling() {
        var deliveryaddres = document.getElementById('deliveryaddres');
        var billingaddres = document.getElementById('billingaddres');
        var shiptobilling = document.getElementById('shiptobilling').getElementsByTagName('input')[0];
        if (shiptobilling.checked) {
            deliveryaddres.value = billingaddres.value;
        }
    }
</script>

函数设置(){
var deliveryaddres=document.getElementById('deliveryaddres');
var BillingAddress=document.getElementById('BillingAddress');
var shiptobilling=document.getElementById('shiptobilling').getElementsByTagName('input')[0];
如果(发货装箱检查){
deliveryaddres.value=billingaddres.value;
}
}
输入上需要的事件“onclick”和“onchange”:

<input type="checkbox" id="deliveryaddres" onclick="SetBilling();" /> 

<input type="text" id="billingaddres" onchange="SetBilling();" />


很抱歉耽搁了(金钟日)。我怀疑这是否有效。我只需要在name=后面添加这个:required,比如这里:name=“deliver\u lastname:required”,这样当复选框未选中时,账单字段就会显示出来,并且是必需的!我的总代码在这里;它有一个必填字段,嗯,我希望我有时是一个程序员而不是设计师..嗨,我不需要一个类required,但是name=“blabla:required”上面的代码没有设置一个类required,它实际上使该字段在兼容HTML5的浏览器中成为required。