0

「101」の ID を持つラジオ ボタンをあるオプションから別のオプションに変更すると、「106」の ID を持つドロップダウン メニューを null 値に変更するコードを次に示します。

<script type="text/javascript">
jQuery(document).ready(function($){
  $('input[name="item_meta[101]"]').change(function(){
    $('select[name="item_meta[106]"]').val('');
  })
})
</script>

ただし、使用可能な値だけでなく、101 の特定の値が選択されている場合にのみ、 106 を null に変更する必要があります。ラジオ ボタン id=101 の値は、それぞれ 1、2、3、4、5 です。したがって、たとえば、101 が 5 から 4 に変更されたが、5 から 3 に変更されなかった場合、106 を null 値に戻す必要があります。

これは可能ですか?もしそうなら、明らかに「.change(function()」を他のパラメーターに変更する必要がありますが、それが何であるかはわかりません。

助けてくれてありがとう。ここに JS フィドルがあります: http://jsfiddle.net/3N2TT/

更新: 機能した最終的なコードは次のとおりです。

<script type="text/javascript">
jQuery(document).ready(function($){
$('input[type="radio"][name="item_meta[101]"]').change(

function () {
    var valCheck = this.value === '4 Categories - $90';
    $('select[name="item_meta[106]"]').val(function () {
        return valCheck ? 'null' : this.value;
    });
});
})
</script>

ありがとう、デビッド!

4

2 に答える 2

0

あなたの問題に対する私自身の見解は次のとおりです。

$('input[type="radio"][name="item_meta[101]"]').change(
    function(){
        // testing if the chosen value is equal to '4' (all input values are strings):
        var valCheck = this.value === '4';

        // setting the value of the select:
        $('select[name="item_meta[106]"]').val(function(){
            /* setting to 'null' if the valCheck evaluates to true, otherwise returning
               the currently-selected value: */
            return valCheck ? 'null' : this.value;
        });
    });

JS フィドルのデモ

参考文献:

于 2013-08-11T11:19:54.007 に答える