0

私は私の選択ボックスを持っています:

 <select name="in_slider" id="in_slider">
     <option value="1">Yes</option>
     <option value="0" selected="selected">No</option>
 </select>

ご覧のとおり、それらのうちの 2 つがあり、1 つが既に選択されています (データベースに渡されたときに正しく処理されるように、この選択にデフォルト設定する必要があります)。

その下には、別の選択項目とオプションがあります。名前と ID が異なるだけでまったく同じコードです。

ユーザーが最初の選択オプションをクリックし、値を [はい(1)] に変更すると、2 番目の選択を非表示にする必要があります()

私が試してみました:

$(document).ready(function() {
    var selectedoption = $('#in_slider').val();
    var valueistrue = "1";

    if (selectedoption == valueistrue) {
        $('#selectboxtwo').hide();  
    }
});

しかし、役に立たない。:(

すでに値が選択されているため、ページが読み込まれた瞬間に実行されますが、最初は 2 番目の選択を表示する必要があるため、それを行うことはできません。

JsFiddle = http://jsfiddle.net/WwnbG/

4

6 に答える 6

1

change最初の選択オプションの関数を呼び出してから、その中にコードを記述する必要があります。

$('#in_slider').change(function () {
   var selectedoption = $('#in_slider option:selected').val();
   var valueistrue = "1";

   if (selectedoption == valueistrue) {
      $('#selectboxtwo').hide();
   }
});

JS Fiddle Example

Your Fiddle Example

于 2013-09-03T10:33:24.313 に答える
1

試す

  var selected = $('#in_slider option:selected');
于 2013-09-03T10:33:54.147 に答える
0
$('#in_slider option:selected').text()
于 2013-09-03T10:33:14.657 に答える
0
$(document).ready(function() {
    var selectedoption = $('#in_slider :selected').val();
    var valueistrue = $('<checkbox name> :checked').val(); ex: $('input[name=check] :checked').val()

    if (selectedoption == valueistrue) {
       $('#in_slider option[value=0]').hide();
    }
});

あなたのクエリ: 「hide() には 2 番目の選択が必要です」。2番目の選択オプションを無効/非表示にする必要があるということですか?

于 2013-09-03T10:36:34.327 に答える