如果未选择,则删除强制选项

时间:2013-03-07 04:41:14

标签: javascript jquery html css forms

我的表单包含3种不同的付款方式:

1 - 直接存款
2 - 信用卡
3 - 办公室现金

我想要做的是,如果未选择信用卡,则从信用卡的表单字段中删除强制状态(验证),以便表单可以在不请求此信息的情况下处理。

有什么想法吗?我有一个JSfiddle与我目前设置的内容:http://jsfiddle.net/barmar/Kvg8M/2/

JS代码:

    $(document).ready(function () {
        $(".paymentmethod").click(function () {
        $(".paymentinfo").hide();
        switch ($(this).val()) {
        case "Direct Deposit":
            $("#pay0").show("slow");
            break;
        case "Credit Card Authorisation":
            $("#pay1").show("slow");
            break;
        case "Cash at FAA Office (In Person)":
            $("#pay2").show("slow");
            break;
            }
        });
    });

我正在使用Adobe Business Catalyst,如果这有助于或阻碍??

2 个答案:

答案 0 :(得分:0)

试试这个

$(document).ready(function () {
        $(".paymentmethod").click(function () {
        $(".paymentinfo").hide();
        switch ($(this).val()) {
        case "Direct Deposit":
            $("#pay0").show("slow");
         $("#filedID").rules('remove', 'required');
            break;
        case "Credit Card Authorisation":
            $("#pay1").show("slow");
            break;
        case "Cash at FAA Office (In Person)":
            $("#pay2").show("slow");
            break;
            }
        });
    });

答案 1 :(得分:0)

req是要求提交值的受影响类。如果req类适用于任何元素,则必须填写为您的代码。

提示:因此,请仔细考虑是否从元素中删除了此类。它不是必须填充元素。如果再次添加此类,则必须填充元素。

如果您使用jQuery,

如何在元素中添加或删除类:

$('#CardName').addClass('req');
$('#CardName').removeClass('req');

如果你不使用JQuery,请看这里。

Remove CSS class from element with JavaScript (no jQuery)


$(document).ready(function () {

function setMend() {
   alert("seting mend");
  $('#CardName').addClass('req');
  $('#CardNumber').addClass('req');
  $('#CardExpiryMonth').addClass('req');
}

function unsetMen(){
    alert("unseting mend");
    $('#CardName').removeClass('req');
    $('#CardNumber').removeClass('req');
    $('#CardExpiryMonth').removeClass('req');
 }

    $(".paymentmethod").click(function () {
        $(".paymentinfo").hide();
        switch ($(this).val()) {
            case "Direct Deposit":
                $("#pay0").show("slow"); 
                unsetMen();                
                break;
            case "Credit Card Authorisation":
                $("#pay1").show("slow");
                setMend();
                break;
            case "Cash at FAA Office (In Person)":
                $("#pay2").show("slow"); 
                unsetMen();
                break;
        }
    });
});