0

我使用 Modx eForm 作为我的表单。

我的问题,我需要将 :required 添加到几个输入字段中,但前提是未选中该复选框!

我有这样的字段:

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

:required 需要在取消选中复选框后设置。

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

<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>
4

2 回答 2

1

可以更容易 - 让送达adddres始终需要,当检查复选框时,只需让字段的值与BillingAddres同步。

需要的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>

输入所需的事件“onclick”和“onchange”:

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

<input type="text" id="billingaddres" onchange="SetBilling();" />
于 2013-04-28T23:07:18.630 回答
0

添加类似的东西

document.getElementById("deliver_lastname").required = true;
于 2013-04-28T22:28:16.380 回答