JQuery ўваход радыё працуе толькі адзін раз

У мяне паўсталі праблемы з JQuery, у мяне ёсць 2 набору уваходаў радыё, адзін для выбару спосабу аплаты і адзін для адгрузкі. Калі я выбраў плацёж па падчапіць Я хачу, каб маё другое радыё, груз сказаць забраць, як добра. Гэта працуе добра, пакуль я не змяніць другое радыё, пасля таго, што ён не будзе працаваць.

Такім чынам, у асноўным, пасля змены адгрузкі адгрузкі не будзе мяняцца аўтаматычна больш пры змене спосабу аплаты.

$("input:radio[name=paymentMethod]").change(function() {
        if($(this+':checked').val()=='pickUp'){
            $('input:radio[name=deliveryMethod]').filter('[value=pickUp]').attr('checked', true);
            $('input:radio[name=deliveryMethod]').filter('[value=UPS]').attr('checked', false);
        }
    });
1
маглі б вы апублікаваць адпаведны HTML?
дададзена аўтар jackJoe, крыніца
Ваш HTML адсутнічаюць імёны і закрыццё уваходаў, верагодна, звязаны з тым, як яна была налепленая. Якія адносяцца да вашай праблеме, вы хацелі б Pickup (пастаўкі), каб праверыць, калі не абраны КБС пры аплаце? і вярнуцца (праверце пікап на пастаўку), калі выбраць любы іншы спосаб аплаты?
дададзена аўтар jackJoe, крыніца
Яна зводзіцца да гэтага (без структуры табліцы) <�папярэдне> <�ўваходных тып = "радыё» праверана = «праверана» ідэнтыфікатар = значэнне = "ідэальны» імя «pm_ideal» = «PAYMENTMETHOD»> <�ўваходных тып = » радыё »ID =" "значэнне =" "назва =" pm_paypal PayPal PAYMENTMETHOD "> <�ўваходных тып =" радыё "ID =" "значэнне =" pm_moneytransfer "імя =" MoneyTransfer PAYMENTMETHOD "> <�ўваходных тып =" радыё "ID = значэнне = назву "Pickup" "pm_pickUp" = "PAYMENTMETHOD"> <�ўваходных тып = "радыё" праверана = "галачка" значэнне = імя "UPS" = "deliveryMethod"> Дастаўка па тыпу КБС <�ўваходных = "радыё" значэнне = » PICKUP »імя =" deliveryMethod "праверана =" праверана "> Сустрэча
дададзена аўтар PvdL, крыніца
яна не павінна быць адменена, вы можаце забраць свой заказ, калі вы заплацілі з PayPal, але вы не можаце выбраць аплату на пікапе, калі вы хочаце, каб ваш заказ будзе адпраўлены.
дададзена аўтар PvdL, крыніца

2 адказы

Калі вы хочаце, каб «блок» выбар дастаўкі UPS, калі карыстальнік выбірае спосаб аплаты пікапа, я рэкамендую адключыць спосаб дастаўкі UPS (а затым зноў ўключыць яго, калі нешта яшчэ абрана), як гэта:

$("input:radio[name=paymentMethod]").change(function() {
    if ($('input:radio[name=paymentMethod]:checked').val() == 'pickUp') {
        $('input:radio[name=deliveryMethod]').filter('[value=pickUp]').attr('checked', true);
        $('input:radio[name=deliveryMethod]').filter('[value=UPS]').attr('disabled', true);
    } else {
        $('input:radio[name=deliveryMethod]').filter('[value=UPS]').attr('disabled', false);
    }
});

Fiddle: http://jsfiddle.net/zvcbz/

1
дададзена

this is a jQuery object, not a string. You cannot add them together. At least use the code below:

$("input:radio[name=paymentMethod]").change(function() {
        if($('input:radio[name=paymentMethod]:checked').val()=='pickUp'){
            $('input:radio[name=deliveryMethod]').filter('[value=pickUp]').attr('checked', true);
            $('input:radio[name=deliveryMethod]').filter('[value=UPS]').attr('checked', false);
        }
    });
1
дададзена